From: Dima D. <dim...@gm...> - 2005-10-24 20:02:08
|
Hello all, I'm trying to get a handle on the current options of connecting analog sensors to a Gumstix computer (or some other small form-factor SBC platform). I already did work with wireless sensor motes, but am somewhat unfamiliar with these larger embedded systems and (expectedly) the plethora of options available is bewildering. I'm hoping I can get a few quick recommendations or pointers... We are developing an embedded system in the domain of mobile environmental monitoring and need to put together a proof of concept in December, so the components we are currently looking for need not be the most optimal for production (i.e. should be developer-friendly, but stil as small as possible). The requirements are quite straightforward: 1) Sample a set of environmental sensors with outputs in the range of 0-5V, hence we need an analog/digital converter (ADC) with, say, 8 channels and at least 10-bits resolution. 2) Get current position via GPS (this can be an integrated board, or one attached by serial port or Bluetooth). 3) Wirelessly relay data to collection stations using TCP/IP, preferably with Wi-Fi 802.11, but a GPRS interface would be an option too. 4) The system must run off batteries and some of the sensors we are considering need to be powered with 5V while others with 12V (for the development phase we need some 6 hours of runtime; the vehicle has its own power source). 5) It looks like we don't need much horsepower... 200MHz will be more than enough, probably even a 486 would do. 6) For prototyping, we are ready to spend something in the range of 200-500 $USD per pop... Summing up: we need a fairly small and low-power SBC with an ADC, Wi-Fi and GPS (USB or Bluetooth). The whole thing must function under GNU/Linux. So far, I have looked at Gumstix and PC/104. The former looks smaller and generally more interesting for our purposes... I find the ADC component as the critical hurdle about Gumstix -- I am aware of Robostix and Audiostix, however still haven't dug deep enough to find out which is better suited for what. Any tips and insights will be highly appreciated. Thank you very much in advance. -- /dima |
From: Dave H. <dhy...@gm...> - 2005-10-24 21:47:37
|
Hi Dima, > 1) Sample a set of environmental sensors with outputs in the range of > 0-5V, hence we need an analog/digital converter (ADC) with, say, 8 > channels and at least 10-bits resolution. The robostix has 8 channels of 10 bit ADC. > 2) Get current position via GPS (this can be an integrated board, or > one attached by serial port or Bluetooth). There are several OEM GPS modules available which can communicate via serial. I just purchased a PG-31 module from these guys: http://www.sparkfun.com/shop/index.php?shop=3D1&cat=3D63& > 3) Wirelessly relay data to collection stations using TCP/IP, > preferably with Wi-Fi 802.11, but a GPRS interface would be an option > too. WiFi is an option on the gumstix. SparkFun also sells cellular modules that could be used: http://www.sparkfun.com/shop/index.php?shop=3D1&cat=3D75& > 4) The system must run off batteries and some of the sensors we are > considering need to be powered with 5V while others with 12V (for the > development phase we need some 6 hours of runtime; the vehicle has > its own power source). If you decide to use a single 12v supply to power everything, then you'll need an external voltage regulator to bring the 12v down before feeding into the robostix or gumstix. -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |
From: Dima D. <dim...@gm...> - 2005-10-25 14:31:15
|
Hello again, I ask some further questions below... (I am sorry if they are very basic, but I am new to most of this and still climbing a steep learning curve.) On 2005-10-24 22:47:30 +0100, Dave Hylands <dhy...@gm...> said: [...] > The robostix has 8 channels of 10 bit ADC. Yes, as far as I understand the ADC is the one included on the Atmega128 MCU... In this case, I would need to program this MCU and make it communicate with the Linux system on the main board, right? The feature I need from Robostix (or Audiostix, or any other add-on) is the ADC to read the sensors' output from a program running on Linux. Can someone please break things down a bit for me about what would be involved here? > There are several OEM GPS modules available which can communicate > via serial. I just purchased a PG-31 module from these guys: > http://www.sparkfun.com/shop/index.php?shop=3D1&cat=3D63& Thanks for the link -- I am impressed with the size and the price. How are you planning to hook it up with your system? TIA! -- /dima |
From: Dave H. <dhy...@gm...> - 2005-10-25 17:06:34
|
Hi Dima, > > The robostix has 8 channels of 10 bit ADC. > > Yes, as far as I understand the ADC is the one included on the > Atmega128 MCU... In this case, I would need to program this MCU and > make it communicate with the Linux system on the main board, right? Yep. There is some sample code. The Flash-LED sample reads all 8 ADC's (currently as 8 bit values) and prints the results on the UART. A couple of fairly minor changes would make it reads the 10 bit values and report them. The UART on the robostix can be connected to the STUART on the gumstix and you could either have the robostix just report the values continuously, or wait for a command and just report one of them. > The feature I need from Robostix (or Audiostix, or any other add-on) > is the ADC to read the sensors' output from a program running on > Linux. Can someone please break things down a bit for me about what > would be involved here? I would probably do it this way: 1 - Connect ATmel UART-0 to STUART. 2 - Write a program for the robostix which gets a single character command from the gumstix (say the ASCII character '0' thru '7'). On the reception of this command the robostix would read the appropriate ADC and print 3 hex digits, or a decimal value (whichever is easier for your gumstix program to read) followed by a newline. The main loop of the robostix program would be much smaller than what's shown in the Flash-LED sample. It would require writing an a2d_10 routine (which would be almost identical to the a2d_8 routine). The a2d_10 routine would look like this: uint16_t a2d_10( uint8_t Channel ) { uint16_t result; // Select the channel ADMUX =3D Channel; // We want ADLAR to be zero // Start the conversion ADCSR =3D ADCSR | ( 1 << ADSC ); // Wait for it to complete while ( ADCSR & ( 1 << ADSC )); return ADC; } // a2d _10 > > There are several OEM GPS modules available which can communicate > > via serial. I just purchased a PG-31 module from these guys: > > http://www.sparkfun.com/shop/index.php?shop=3D1&cat=3D63& > > Thanks for the link -- I am impressed with the size and the price. How > are you planning to hook it up with your system? They generate a serial output, so it will be connected to a serial port on the gumstix or robostix (I haven't decided which yet), -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |
From: Craig H. <cr...@gu...> - 2005-10-25 20:06:48
|
On Oct 25, 2005, at 9:59 AM, Dave Hylands wrote: >>> There are several OEM GPS modules available which can communicate >>> via serial. I just purchased a PG-31 module from these guys: >>> http://www.sparkfun.com/shop/index.php?shop=1&cat=63& >>> >> >> Thanks for the link -- I am impressed with the size and the price. >> How >> are you planning to hook it up with your system? >> > > They generate a serial output, so it will be connected to a serial > port on the gumstix or robostix (I haven't decided which yet), We've succesfully used the Lassen iQ module (just scroll down a bit on that sparkfun page) hooked to a prototype board connecting the module to the STUART on the gumstix. Works great -- we're turning the board now to go to production with it sometime soon. C |
From: Dima D. <dim...@gm...> - 2005-10-27 19:43:05
|
Hi Dave, On 2005-10-25 17:59:47 +0100, Dave Hylands <dhy...@gm...> said: > Hi Dima, > >>> The robostix has 8 channels of 10 bit ADC. >> >> Yes, as far as I understand the ADC is the one included on the >> Atmega128 MCU... In this case, I would need to program this MCU and >> make it communicate with the Linux system on the main board, right? > > Yep. There is some sample code. The Flash-LED sample reads all 8 ADC's > (currently as 8 bit values) and prints the results on the UART. Thanks a lot for your clarifications and suggestions about using the Robostix... Do you have an idea of what kind of interface is exposed by ADC on the Audiostix? Is there out-of-the-box support? > A couple of fairly minor changes would make it reads the 10 bit values > and report them. I guess here you mean some bit shifting to assemble the full value on a 16-bit variable... > They generate a serial output, so it will be connected to a serial > port on the gumstix or robostix (I haven't decided which yet), Regarding the GPS thingie, my main concern is on how to connect it physically and provide power. Do I need an electronics expert to do it? If I connect the Robostix to STUART, where do I connect the GPS receiver? Are you using its USB evaluation board? Can you shed some more light for me please? (Sorry, for the ultra-basic questions, but I am just starting to 'gumstix'). TIA. -- /dima |
From: Dave H. <dhy...@gm...> - 2005-10-27 21:44:46
|
Hi Dima, > Thanks a lot for your clarifications and suggestions about using the > Robostix... Do you have an idea of what kind of interface is exposed by > ADC on the Audiostix? Is there out-of-the-box support? I don't believe that any drivers currently expose this. > > A couple of fairly minor changes would make it reads the 10 bit values > > and report them. > > I guess here you mean some bit shifting to assemble the full value on a > 16-bit variable... Nope - the 10 bit value will just be in the lower 10 bits of a 16 bit varia= ble. > Regarding the GPS thingie, my main concern is on how to connect it > physically and provide power. Do I need an electronics expert to do it? It will depend on the device you're trying to connect. The GPS devices run at different voltages and some have RS-232 level signals, while others have logic-level signals. > If I connect the Robostix to STUART, where do I connect the GPS > receiver? Are you using its USB evaluation board? Can you shed some > more light for me please? There's a second serial port on the robostix. The robostix could easily funnel the data over to the gumstix. -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |
From: Kirk M. <km...@ec...> - 2005-10-28 07:36:54
|
Hi - if you need to power the GPS on/off and it can take 5V (unlikely) our gumsense board can do that - and the A/D is sorted (pretty much) by the PIC and a set of linux progs. We'd be glad of any other developers/users.... but you may not like the hand-soldering we have to do at the moment! anyway - you're probably best using a gps module if you don't want to put an rs232 level converter in - and you'll save $/space. Kirk At 22:44 27/10/2005, Dave Hylands wrote: >Hi Dima, > > > Thanks a lot for your clarifications and suggestions about using the > > Robostix... Do you have an idea of what kind of interface is exposed by > > ADC on the Audiostix? Is there out-of-the-box support? > >I don't believe that any drivers currently expose this. > > > > A couple of fairly minor changes would make it reads the 10 bit values > > > and report them. > > > > I guess here you mean some bit shifting to assemble the full value on a > > 16-bit variable... > >Nope - the 10 bit value will just be in the lower 10 bits of a 16 >bit variable. > > > Regarding the GPS thingie, my main concern is on how to connect it > > physically and provide power. Do I need an electronics expert to do it? > >It will depend on the device you're trying to connect. The GPS devices >run at different voltages and some have RS-232 level signals, while >others have logic-level signals. > > > If I connect the Robostix to STUART, where do I connect the GPS > > receiver? Are you using its USB evaluation board? Can you shed some > > more light for me please? > >There's a second serial port on the robostix. The robostix could >easily funnel the data over to the gumstix. > >-- >Dave Hylands >Vancouver, BC, Canada >http://www.DaveHylands.com/ > > >------------------------------------------------------- >This SF.Net email is sponsored by the JBoss Inc. >Get Certified Today * Register for a JBoss Training Course >Free Certification Exam for All Training Attendees Through End of 2005 >Visit http://www.jboss.com/services/certification for more information >_______________________________________________ >gumstix-users mailing list >gum...@li... >https://lists.sourceforge.net/lists/listinfo/gumstix-users - http://www.ecs.soton.ac.uk/~km |