NEW: Learning electronics? Ask your questions on the new Electronics Questions & Answers site hosted by CircuitLab.
Project Help and Ideas » WiFi Sniffer Dog
March 06, 2010 by feilipu |
WiFi Sniffer Dog I was looking for a "why" for investing my time in this, because with a "why" progress is always faster. And I think this will make an excellent one / two year multi-layer project, that will be able to demonstrate itself at the end. Also it won't consume too much cash. This post is to create a problem description, expected outcomes, and path I'll be taking. I will also be a reference when I forget where I was going with this. Why.
Expected features.
Assumptions.
Initial Plan.
Component sourcing.
1x Pololu 5" inch Robot Chassis RRC04A http://www.robotgear.com.au/Product.aspx/Details/353 1x Pololu 42 x 19mm Wheel and Encoder Set http://www.robotgear.com.au/Product.aspx/Details/307 1x TB6612FNG Dual Motor Driver Carrier http://www.pololu.com/catalog/product/713 1x Pololu Ball Caster with 1" Plastic Ball http://www.pololu.com/catalog/product/956 2x 10:1 Micro Metal Gearmotor http://www.pololu.com/catalog/product/1099 1x Arduino Duemilanove & Prototypying Shield http://arduino.cc/en/Main/ArduinoBoardDuemilanove (will be replaced in step 9. but keep shield)
3x Pololu Carrier with Sharp GP2Y0D810Z0F Digital Distance Sensor 10cm http://www.pololu.com/catalog/product/1134
2x Sharp GP2Y0A21YK0F Analog Distance Sensor 10-80cm http://www.pololu.com/catalog/product/136
1x Piezo Buzzer from NerdKits
1x MMA7260QT 3-Axis Accelerometer http://www.pololu.com/catalog/product/766 1x LISY300AL Single-Axis Gyro http://www.pololu.com/catalog/product/765
1x BlackWidow 1.0 http://www.seeedstudio.com/depot/blackwidow-10-p-613.html So, maybe the next post next month, when the chassis us working as expected. |
---|---|
March 12, 2010 by feilipu |
WiFi Sniffer Dog - Part 2 This post covers some of the references and libraries that I've found to be potentially useful. A trip to the different on-line shops has allowed me to gather most of the pieces... and they're on their way. But, at the moment just reading and researching... Expected features.
Optional features.
Assumptions.
Initial Plan.
Component sourcing.
1x Pololu 5" inch Robot Chassis RRC04A http://www.robotgear.com.au/Product.aspx/Details/353 1x Pololu 42 x 19mm Wheel and Encoder Set http://www.robotgear.com.au/Product.aspx/Details/307 1x TB6612FNG Dual Motor Driver Carrier http://www.robotgear.com.au/Product.aspx/Details/319 1x Pololu Ball Caster with 1" Plastic Ball http://www.robotgear.com.au/Product.aspx/Details/370 2x 10:1 Micro Metal Gearmotor http://www.robotgear.com.au/Product.aspx/Details/344 1x Arduino Duemilanove http://arduino.cc/en/Main/ArduinoBoardDuemilanove (will be replaced in step 9.) 1x Arduino Proto Shield http://www.sparkfun.com/commerce/product_info.php?products_id=7914 Reminder to read the Duemilanove information at the Arduino web site http://arduino.cc/en/Main/ArduinoBoardDuemilanove The Society of Robots web site is filled with relevant projects and help. Should be able to get a lot of code examples from here. http://www.societyofrobots.com The wiki pages on robots are full of info too. http://en.wikibooks.org/wiki/Category:Robotics
3x Pololu Carrier with Sharp GP2Y0D810Z0F Digital Distance Sensor 10cm http://www.robotgear.com.au/Product.aspx/Details/309
2x Sharp GP2Y0A02YK0F Analog Distance Sensor 20-150cm http://www.robotgear.com.au/Product.aspx/Details/272 1x SRF10 Dual Transducer Ultrasonic Ranger http://www.robot-electronics.co.uk/htm/srf10tech.htm
1x Piezo Buzzer from NerdKits
1x MMA7260QT 3-Axis Accelerometer http://www.pololu.com/catalog/product/766 1x LISY300AL Single-Axis Gyro http://www.pololu.com/catalog/product/765
1x BlackWidow 1.0 http://www.seeedstudio.com/depot/blackwidow-10-p-613.html
1x Thermopile Array http://www.robotgear.com.au/Product.aspx/Details/294 So, maybe the next post once some more details are to hand. Construction NOTES to self. R(emember this when building)
Chassis platfrom comes from Pololu, so it will be good to use their Orangutan libararies wherever possible. I will need to modify them as the Arduino runs at 16MHz (not at 20MHz). Should I modify Arduino/Blackwidow to use 20MHz crystal, to save modifying all the Orangutan, and also to gain 33% more cycles/sec? Have purchased CRYSTAL 22.1184MHZ HC49/US Crystal from Digi-Key. Everyone loves to overclock their stuff, why should the AVR be different? And this frequency gives a 0% error on UART serial speeds (similar to the Nerdkits crystal). I bought 50x so if anyone wants one / some, let me know. Webbot Lib is a library that addresses most issues associated with building robots. http://webbot.org.uk/iPoint/30.page Will get system power from Liquidware Lithium Backpacks. Medium for AVR. Large for Motors. https://www.liquidware.com/shop/show/BP/Lithium+Backpack
Basic information on how to get differential drive working. http://www.societyofrobots.com/programming_differentialdrive.shtml Then how to add PID control to the system. http://www.societyofrobots.com/programming_PID.shtml http://en.wikipedia.org/wiki/PID_controller Some of the Orangutan & Pololu libraries are directly relevant: OrangutanMotors - basis for control of the DC motors. PololuQTRSensors - basis for reading the Quadrature sensors from Pololu. PololuWheelEncoders - basis for reading the Encoders on the Wheels. CourbeBezier Libraries are interesting for describing Bezier curves. http://jppanaget.com/doku.php/wiki:bezier_curves
Some of the Orangutan & Pololu libraries are directly relevant: OrangutanPulseln - basis for reading the short range sensors. OrangutanDigital - basis for reading the short range sensors.
A very good description of the chosen Sharp optical rangefinders. http://www.societyofrobots.com/sensors_sharpirrange.shtml Sharp rangefinders are noisy, and need a 22uF capacitor placed across the power rail. And this is a description of the Sonar Ultrasonic rangefinders. http://www.societyofrobots.com/sensors_sonar.shtml Some of the Orangutan libraries are directly relevant: OrangutanAnalog - basis for reading the Sharp Optical Rangers
This code at Arduino might be useful. http://www.arduino.cc/en/Tutorial/PlayMelody http://www.arduino.cc/playground/Code/MusicalAlgoFun
Using the wavefront technique seems very relevant, from Society of Robots http://www.societyofrobots.com/programming_wavefront.shtml Gradient technique is seen to be better than wavefront. http://en.wikipedia.org/wiki/Gradient
Some of the Orangutan libraries are directly relevant: OrangutanSPIMaster - can drive the interfaces with the WIFI device on Blackwidow. OrangutanSPIMaster - can drive the interfaces on the Ultrasonic Ranger. See how behaviour based robotics applies to object avoidance. http://en.wikipedia.org/wiki/Behavior-based_robotics Use the 6DOF Atomic Gyros & Acelerometer code as basis.
Some of the Orangutan libraries are directly relevant: OrangutanSPIMaster - can drive the interfaces on the Acceleration & Yaw sensors. OrangutanSPIMaster - can drive the interfaces on the Ultrasonic Ranger.
Some of the Orangutan libraries are directly relevant: OrangutanSPIMaster - can drive the interfaces with the WIFI device on Blackwidow. A general website for location technique comparisons http://www.positioningtechniques.eu/lbs_technique_checker.asp The RTLS from 802.11k is useful, as are the equations for solving based on iso-power intersections of two circles. http://mathworld.wolfram.com/Circle-CircleIntersection.html http://local.wasp.uwa.edu.au/~pbourke/geometry/2circle/ There is a C code example to be followed. This navigation example using the A* algorithm. http://www.societyofrobots.com/programming_nav_a_star_demo.shtml http://www.policyalmanac.org/games/aStarTutorial.htm Steering Behaviours http://www.red3d.com/cwr/steer/
Webbot Lib is a library that addresses most issues associated with building robots. http://webbot.org.uk/iPoint/30.page Use the Seeker2 source where possible, from Society of Robots. Research into finite state machines required. Also there is an Experimental Robot Platform code that is being provided ERP_WebbotLib that will be very relevant. http://www.societyofrobots.com/robot_ERP.shtml RidgeSoft has a lot of tutorials http://www.ridgesoft.com
Some of the Orangutan & Pololu libraries are directly relevant: OrangutanServos - can drive the PCM interfaces to the pan servo for Thermopile Sensor (option). |
March 12, 2010 by feilipu |
*** PIN OUTS DEFINED For http://asynclabs.com BlackWidow 1.0 PB0 WiFi Digital Input Interrupt 0 PB1 Motor A AIN1 PWM Output (changed from PB3 on pololu 3pi). Disable WiFi LED! PB2 SPI Slave Select for WiFi PB3 SPI MOSI for WiFi PB4 SPI MISO for WiFi PB5 SPI SCK for WiFi PB6 CRYSTAL PB7 CRYSTAL PC0 LISY GIRO Z Axis Analogue Sensor to 3.3V PC1 IR Analogue Distance Sensor GP2Y0A02YK0F (20cm-150cm) to ~2.8V PC2 IR Analogue Distance Sensor GP2Y0A21YK0F (10-80cm) to ~2.8V PC3 Piezo Speaker PC4 I2C SDA for Ultrasonic Ranger SRF10 Addr 0xE0 & Thermopile Sensor Addr 0xD2 PC5 I2C SCL PC6 RESET PD0 Wheel Encoder Digital Input Interrupt 16 PD1 Wheel Encoder Digital Input Interrupt 17 PD2 Wheel Encoder Digital Input Interrupt 18 PD3 Motor A AIN2 PWM Output PD4 Wheel Encoder Digital Input Interrupt 20 PD5 Motor B BIN1 PWM Output PD6 Motor B BIN2 PWM Output PD7 PIR Sensor Digital Input Interrupt 23 |
March 12, 2010 by feilipu |
Small rework, should make PIR easier.
|
March 27, 2010 by johnh |
Just glancing through, haven't had time to check all of your products, but it looks like an interesting project. One thing you might want to look at is a Linux distro known as WeakNet Linux Assistant. WeakNet includes a tool that can use a WiFi card to look for a device based on hardware MAC address. I have no idea what the process would be to implement this on your hardware, but I thought that it might be interesting, if only to provide ideas. |
Please log in to post a reply.
Did you know that the Timer/Counter modules on the microcontroller can be configured to output a PWM (Pulse Width Modulation) signal? Learn more...
|