300 likes | 458 Views
Sensor Network Hardware Platform Design Andreas Savvides Embedded Networks and Applications Lab ENALAB http://www.eng.yale.edu/enalab YALE EE & CS Departments April 27, 2005. Research Supported by:. Hardware Platform Design. Platforms in applications and deployments
E N D
Sensor Network Hardware Platform Design Andreas SavvidesEmbedded Networks and Applications LabENALABhttp://www.eng.yale.edu/enalabYALE EE & CS DepartmentsApril 27, 2005 Research Supported by:
Hardware Platform Design • Platforms in applications and deployments • Computation requirements in applications and design • Platforms vs. application needs • Hardware design and interface issues • Experiences with the platform development process • Emphasis topic: Hardware characterization • Power characterization is discussed in SPOTS papers/posters • I will pick on antenna behaviors in 3-D scenarios • Algorithms and platforms should change together • HW platforms can still change the way we think about algorithms
Hardware Sensing Platforms HW Platforms Experiment with unknown environments Shrink the HW NIMS Nodes @UCLA UC Berkeley’s Spec Node & Smartdust Intelligent Integrated Sensing Network Platforms
Hardware Platform Priorities HW Platforms Experiment with unknown environments Shrink the HW Understanding unknown sensing phenomena Power & Cost Reduction NIMS Nodes @UCLA UC Berkeley’s Spec Node & Smartdust Intelligent Integrated Sensing Network Platforms
Platforms vs. Application Needs Each application has different computation, memory and interface requirements • Wide range of applications & requirements: • Surveillance • Medical care • Structural health monitoring • Traffic management • Tracking fires • Environmental exploration • Child motion monitoring • Hard to create a single platform for all applications Links to SPOTS Platforms - Pages 429 – 431 of the proceedings
Opportunities for New HW at Different Levels • Processor core • New instructions • Support for different power modes • Peripherals • Need new custom peripherals • Often running as different HW treads • Sensors • Create new sensing modalities • Move computation and intelligence inside the sensor • Still many tradeoffs and engineering challenges to address
When should you attempt to build a new platform? • If you have a specific problem in mind for which existing platforms won’t suffice • If you plan to create a hardware component for which you need tight control of the hardware • If cost and size become a limiting issue • Need to consider • What is the benefit of having own platform? • Is this going to enable or handicap your research effort?
Plan your priorities • What is your design objective? • Avoid building new HW for the sake of building • Target a specific feature or application • Power consumption vs. proof of concept • Which is more important to you? • Proof of concept • Over-design vs. under-design • If the algorithm is known, size and power become the focus • If the algorithm/application is not known you need to relax the constraints
Before you begin to build a sensor node • Are the tool chains available? • Make sure you have all the tools you need to complete the cycle available • Flash programmer • Compiler • Debugger & JTAG tools • Is the processor chip you are using mature? • If not, then don’t use it unless you have collaboration with the manufacturer • Get the development kit first and try to write software before you start • Does the radio you are using have software support/tools?
Design Tools and Component Selection • Try to use well established packages, ORCAD for instance • Typically available from the CAD tools suite • Easier to find/share component footprints • This is one of the most time-consuming and error-prone part of the process • Make sure you select the right components • Components come in different packages • Components have different cost and power consumption • Good idea to purchase all the components before the prototype PCB is sent to fabrication • If you plan to build large numbers, talk to people who did it before first
Design Considerations • Design for manufacturability • Take into account that you need to build more • Plan for an economical way to do it • Capitalize on the fabrication cycle • Most companies have reduced rates for 4 week runs • Assembly houses may have specific requirements on assembly • Find out about this before you begin • Talk to the assembly house before you finalize your design • Some PCB boards and components will require fiducial points for machine assembly • Some manufacturers may be able to suggest alternative components • Put testpoints for debugging and power characterization during operation • Be careful with radios – they have specific PCB requirements
Developing your PCB • Look around for existing designs first • Investigate parts • Availability, packaging, power consumption & cost • Get your tools together for the whole process first • Schematic capture and review process • Layout • Double check your component footprints • Talk to the manufacturer – some places charge less for 1 phase board • Odd number of layers does not save you money • Make sure you follow the manufacturer directions for radio laout • Make sure you wire the board for test & measurement • Plan for testing
SmartKG iBadge Platform (NESL/UCLA) • One of the most highly integrated sensor platforms • Hard to build – very small components 0201 components, difficult to machine assemble • Production and assembly costs is a limiting factor • Lots of educational value!
Study Case – Building the XYZ • Work with Cogent Computer • Small single board computer company in Rhode Island • Already has expertise and interest in embedded ARM • Collaboration with OKI Semiconductor • Make sure that all the peripherals are available • Talk to Chipcon to make sure they would have an IEEE 802.15.4 MAC available • Design prototype according to our specification • Second pass design with Cogent Computer • Identify inexpensive components • Make the design easier to manufacture • 1 side, 6-layer board • Placement done to accommodate hand and machine assembly
Example: XYZ Mobility & Ultrasound Board • Align components to make low production assembly and debugging more efficient • Makes hand assembly or low end machine assembly easier
Lessons Learned • Don’t bother soldering everything by hand • Look for places esp. local shops that can help you • If the layout is too complex, outsource to an expert • Cost is the same if you consider the lost time and the possibility of bugs • Pace yourself • Long, organized planning period • Fabrication & assembly cycle (2 to 6 weeks) • Have a support strategy for the system • How are you going to make more, distribute it, test it, use it etc. • Plan for iterative implementation and customization • After some field deployment you will probably need to make some changes • Verify the software and programming cycle before you finalize the hardware design
Lessons Learned • Go for the mainstream design tools • Design for manufacturability and testability • Be aware of what if already available • Look into the community to see if there are pieces you can reuse • Reconsider picking platform development as a research topic if other companies are doing it • Ember & OKI have IEEE 802.15.4 implementations on radio chip • re-implementing the same MAC w/o a longer term plan will have short half-life
After Fabrication Completion • Have a test strategy in mind for SW & HW • Write diagnostic code to check each subsystem • Diagnostic code should become part of the runtime environment • Treat your new platform as a new device. Characterize it! • Characterize power consumption at different modes • Characterize platform in a realistic environment! • Push the platform to the limits, know where things break down • Post your data, this is would be the most valuable asset to the community • Example: Antenna Characterization for CC 2420 • PCB design affects the antenna • Characterize radio and antenna properties in 3D!
Chipcon CC2420 Radio Power Levels RSSI_VAL = Computed by the radio over 8 symbol periods (128us) RSSI_OFFSET= Determined experimentally, based on front end gain (around -45dBm) Approx. Range at power level 6 in an office corridor = 30ft Antenna Length 2.9cm
Radio Calibration for TX and RX Each radio chip is different E[Pr]=29.94dBm σ=2.7dBm 10 Different Transmitters 40cm 10 Different Receivers E[Pr]=26.375dBm σ=2.88dBm 40cm
Orientation variations at ground level • Repeat experiment for 4 different nodes, same receiver: • TX Power -15dBm • 8 different positions, 4 orientations for each position
Indoor Path Loss Measurements Floor measurements in a 24 x 20ft lounge – no obstacles Same power level using suboptimal antenna η=3
Indoor Path Loss Measurements Floor measurements in a 24 x 20ft lounge – no obstacles
Monopole Antenna Radiation Pattern Side View Top View Communication range Symmetric Region Antenna orientation independent regions Communication range
RSSI at Different Antenna Orientations At the bad orientation, antenna has to be at similar height to get proper results
Link Asymmetry in 3D-scenarios % of one-way links
RSS Asymmetry at Different Power Levels Asymmetric Links %
Platforms in Undergraduate Curriculum – Setting up a lab Capstone Project EENG 460a Networked Embedded Systems & S. Networks EENG 449 Computer Systems • Embedded and Real Time OS • Radio Technologies and MAC • Routing for small devices • Sensor network applications • Self-Configuration • Data Storage • Mobility and Actuation • Expect to have a research • caliber project • Undergraduates participate on • research papers • Computer Architecture • Embedded Processors • Assembly Language Most important assets: 1. Develop HW intuition early on 2. Have fault diagnostic code for the device
Conclusions • Building HW is a great learning experience and adds to the diversity • Useful to uncover new ideas and concepts • More insight, more prudent researcher • Close consideration with software design is crucial • HW changes faster than SW • One of the biggest challenges • Radio technology • There is a large domain of problems for which the radio may not be sufficient • Need to become more critical of radio capabilities in applications • Try out different radios! • Data traces and benchmarks are still missing • Need better ways of reporting power and performance • Utility value in terms of the application should be factored in