Implementation of an Economical Web Server for Home Automation Ethernet Technology

advertisement
Implementation of an Economical
Web Server for Home Automation
System Based on IR, Bluetooth and
Ethernet Technology
Dr.-Ing. Chao-Huang Wei
Department of Electrical Engineering
Southern Taiwan University
Outline
1. Foreword
2. Hardware Tools
3. Software Tools
4. Experiment Results
5. Conclusions and Future Works
Trend of Home Network
• There is a growing need to add network connectivity
to more home devices.
• The Forrester Research reports, by year 2010, up to
95% of the devices used to access the Internet are
non-PC devices. By year 2020, the global thing-tothing Internet (IOT) will be developed into a trillionUS-Dollar industry.
• The network connectivity of machine-to-machine
(M2M) communication will be a primary market
demand for embedded networking systems.
Requirements of Home Networks
•Noise Rejection
Network has to allow for reliable communication.
Requires preservation of data and synchronization of data lines.
•Bandwidth
Home networks can contain many sensors and actuators.
Sensor data can be generated at different rates.
•Connectivity
Sensors have to be connected to processing units.
•Integration
Network structures have to be integrated into buildings.
•Privacy and Security
Home networks will transfer private and sensitive data.
Installation & Maintenance of Home
Network & Networked Home Appliances
• Installation (Plug & Play)
Allows devices to describe themselves.
Allows remote inquiry of devices.
Individual home/room identification.
• Maintenance (Supported application code)
Build-in basic function of device.
External downloaded program.
User altered control program.
Emergency Handling
• Cutoff power supply when malfunction.
• The front door must not be locked when emergency
condition in house occurs.
• The fire alarm must turn off all gas and electricity.
Types of Home Networking
• Wired
1.
2.
3.
Phone Line Networking (HomePNA)
Power Line Networking (X10, CEBus, HomePlug, LonWorks)
Other wires (Ethernet, USB, IEEE1394 Firewire, I2C)
• Wireless
1.
2.
3.
4.
WiFi
ZigBee
Bluetooth
Infrared
System Architecture
Web Controller
• Considerations:
1. Easy hardware and software developments.
2. High to medium CPU performance, but low-cost.
3. Enough I/O ports & interface supporting.
• Solution:
1. Single-chip Microcontroller with TCP/IP, 10/100M Fast
Ethernet MAC/PHY, and flash memory.
2. The ASIX company (Taiwan) provides software libraries
(incl. I2C, UART, Timer, TCP/IP Stack) and develop
tolls for their AX110xx family.
3. RTOS support.
AX11005 Development Board
Functional Block Diagram of
Embedded Ethernet Microcontroller
Application Examples of AX110xx
Peripherals to Web Controller
Bluetooth Module
UART Interface
Humidity/Temperature Sensor Module
I2C Interface
Contact Sensor Module
Infrared Remote Connection
Infrared Signal from/to GPIO Ports
Software Modules of AX110xx
The AX110xx software modules include CPU, Ethernet,
S/W DMA, MS Timer, Local Bus, I2C, SPI, 1-Wire,
CAN, UART2, PCA and two TCP/IP stacks (i.e. uIP and
Lightweight IP).
TCP/IP Module
Application Modules
TCPIP Module
// general interface
TCPIP_Init(…), TCPIP_Bind(…), TCPIP_SetPppoeMode(…), TCPIP_GetIPAddr(),
TCPIP_GetSubnetMask(), TCPIP_GetGateway(), TCPIP_SetIPAddr(…), TCPIP_SetSubnetMask(…),
TCPIP_SetGateway(…), TCPIP_SetMacAddr(…) , TCPIP_PeriodicCheck(…),
TCPIP_AssignLowlayerXmitFunc(…), TCPIP_AssignPingRespFunc(…), TCPIP_DontFragment(…) ,
TCPIP_Receive(…)
// tcp interface
TCPIP_TcpListen(…), TCPIP_TcpNew(…), TCPIP_TcpConnect(…), TCPIP_TcpKeepAlive(…),
TCPIP_TcpClose(…), TCPIP_QueryTcpLocalPort(…), TCPIP_TcpSend(…)
// uip interface
uip_arp_ipin(), uip_arp_arpin(), uip_arp_out(), htons(…) TCPIP_GetRcvBuffer(),
TCPIP_GetXmitBuffer(), TCPIP_SetRcvLength(…), TCPIP_GetXmitLength(),
TCPIP_GetPayloadBuffer(), TCPIP_GetGwMacAddrFlag(), TCPIP_SetGwMacAddrFlag()
Adapter Module
HTTP Protocol
HTTP Protocol
HTTP Protocol Sub-module
void HTTP_Init()
U8_T HTTP_NewConn(U32_T XDATA* pip,
U16_T remotePort, U8_T socket)
void HTTP_Event (U8_T id, U8_T event)
void HTTP_Receive (U8_T XDATA* pData,
U16_T length, U8_T conn_id)
U8_T http_UserPost (U8_T XDATA* pData,
U16_T length, U8_T fileId)
void http_DivideHtmlFile
(HTTP_SERVER_CONN XDATA* pHttpConn,
U8_T id)
U8_T http_NewConfig(void)
Web page Sub-module
void FSYS_Init()
void fsys_InitPostRecord()
U8_T FSYS_FindFile (U8_T XDATA*
pFName)
void (*fun_tbl[]) (void *pWebData)
Webpage Conversion to C
Language
Web Page & Experiment Examples
IR Receiver 2
(for Lamp)
IR Receiver 1
(for DVD)
Bluetooth
Web
Server
Conclusions and Future Works
• An economical web controller for home networks has been
developed in spite of hardware and software limitations.
• The user can control legacy home appliances and to receive sensor
data to monitoring home status via infrared signal.
• The web controller provides webpage to the user for Internet access
via Ethernet.
• The web controller communicates to smart phone for easy control
in house via Bluetooth.
• Applications for home networks will toward to Home Automation,
Home Security, Home Healthcare and Home Entertainment, but
also suitable for office.
Thanks for your attention!
Download