embedded network controller with web interface bradley university department of electrical &...
Post on 19-Dec-2015
214 Views
Preview:
TRANSCRIPT
Embedded Network Controller with Web Interface
Bradley UniversityDepartment of Electrical & Computer Engineering
By: Ed SiokAdvisor: Dr. Malinowski
April 27th, 2006
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Current Status
Summary
Embedded Network Controller with Web Interface
Proof-Of-Concept project showing the use of network and internet protocols with embedded systems
Applications
The internet protocols create an efficient method of communication among devices
Networked devices are being used to control many things Factory Automation Industrial Plants Security & Surveillance
Many can be controlled remotely through a web interface
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Current Status
System Block Diagram
Networked Controller
Internet / Network
Sensors Actuators
Client Computer
System Block Diagram
Networked Controller
Internet / Network
Sensors Actuators
Client Computer
Microcontroller Board: M5282 LITE 5282 Coldfire Processor Complete Development
Board On board Network
Controller
Internet / Network
Network Interface Input & Output – All
interaction with users Addition of XML
information output to be used by a data collection server
Networked Controller
Internet / Network
Temperature Sensors
HVAC
Zoned Dampers
Client Computer
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Current Status
Internet Theory
Internet is merely the interconnection of many networks (internetworking)
Internet Protocol suite: defines how information is sent over the hardware networks
Different network hardware / same communication
Internet works over ethernet, satellite, coaxial cables, wireless
Internet Theory
Goals of Internet Communication: Efficiency Reliability
These goals are achieved through the Internet Protocol Suite
Consider the analogy of the internet vs. postal mail in the protocol suite
Internet Protocol Suite
Hardware Layer
Data Link Layer
Network Layer
Transport Layer
Application Layer
1010100101101010
IP Data
TCP Data
Data
Ethernet Frame
Internet Protocols
Application
Transport
Network
Data Link
Network
Data Link
Network
Data Link
Application
Transport
Network
Data Link
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Current Status
TCP/IP Data Flow
Ethernet Packet?
IP Processing
ARP Processing
TCP
UDP
ICMP
HTTP
DHCP
How packet data flows through the TCP/IP stack to its final application
Software
Packet data in the buffer?
Main Loop
Split Data & Process
Manage HTTP Connections
DHCP Client Function
Manage ARP Entries
Update TCP Connections
Timer Interrupt
Yes
No
Main Loop: Manages all connections and applications
HTTP Request
File Name ? Var1=XX & Var2=XX
HTTP Function
Receive TCP Data into Buffer, Call HTTP Check if received data includes “GET”, parse
file name, parse desired variables Generate hash value to decide which file to
host Store variables in local memory Depending upon file name, run functions to
update web pages desired
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Current Status
Methods of Implementation
1st method: uClinux Positives:
Embedded Linux for Microcontrollers Contains everything needed for development Multithreading Capabilities
Negatives: Large footprint, many involved files Difficult to troubleshoot and make an environment for Took 1 month to build a Cross-Compiler and toolchain
Methods of Implementation
2nd method: OpenTCP stack Positives:
Less files to modify and troubleshoot with Already had a toolchain and cross-compiler built No linux knowledge necessary
Negatives: Several bugs in the software to fix Missing some parts of the TCP stack: IGMP,
Multicasting No file system
Methods of Implementation
As an experiment, both methods were using Cygwin, a linux environment in Windows and a GNU cross compiler Metrowerks Codewarrior is expensive (not on my
laptop) Command based compiling using makefiles and
the GNU C Compiler
Implemented using OpenTCP
Topics
Summary Detailed Description
System Block Diagram Software Description
Internet Theory TCP/IP Software
Methods of Implementation Final Status
Final Status:
Completed: Simple TCP stack implemented DHCP, HTTP, simple CGI applications
implemented Parsing of URLs and storage of variables Dynamic web pages
Current Status
Summary Internet Protocols are implemented on an embedded
microcontroller board A simple web server is implemented
Expansion The next logical step is to interface with sensors and
actuators Expanding the network software to support IGMP /
Multicasting
Any Questions?
top related