Version 221 (Kwabena Agyeman, 06/26/2012 07:30 pm) → Version 222/265 (Anthony Rowe, 07/01/2012 05:03 pm)

h1. Wiki

!/attachments/515/CMUcam4_A.JPG! !/attachments/516/CMUcam4_B.JPG! !/attachments/450/CMUcam4%20Arduino%20Shield%20B_Little%20-%20A4.jpg! !/attachments/448/CMUcam4%20Arduino%20Shield%20A_Little%20-%20A4.jpg!

h3. *New Firmware coming soon...* *Temporary News*

We've been working in the background on completing a new 30 FPS firmware. So far everything is working great! We still have to test the firmware in different environments but we should be there by the end of the month! Right now we are tweaking register settings that control the camera module. Once we finish that the new firmware will be compete. After which, we will finalize the Arduino interface library! And then after that we'll have more cool things to come.

Update: The 30 FPS firmware is done! Expect it to be released in early July.


-- Kwabena W. Agyeman

h3. *Quick Links*

* [[Quick Start]]

* [[Arduino Interface Library]]
* [[BASIC Stamp 2 Interface Library]]
* [[CMUcam4 Graphical User Interface]]

* [[Lextronic Camera|Black Lextronic Camera Documentation]]
* [[SparkFun Camera|Red SparkFun Camera Documentation]]
* [[Parallax Camera|Blue Parallax Camera Documentation]]

* [[Firmware Source Code and Binaries]]

* [[Color-tracking Explanation]]
* [[Tips and Tricks]]

* [[Frequently Asked Questions]]
* [[Troubleshooting]]

* [[Gallery]]
* [[People]]

* [[CMUcam1:]]
* [[CMUcam2:]]
* [[CMUcam3:]]

* [[Legal Information]]

h3. *Cool Videos*

* "CMU Mechatronics 2012: Team Fun": - CMUcam4 student project at Carnegie Mellon University!

* "CMUcam4 Test": - By Lextronics. It's in French - But shows functionality.
* "CMUcam4 Pan/Tilt Test": - By Parallax. This is a development video of the CMUcam4. The red version is a prototype.

* "CMUcam4 Initial Prototype Video": - By Parallax. This is a aged video of the initial CMUcam4 prototype.

h3. *Cool Projects*

* [[MoBot]] - By: Ramanathan Muthiah
* [[Multi-Shot Cannon]] - By: Wesley Myers

h3. *Where can I buy a CMUcam4?*

* "Lextronic": (France) - "Buy Here":

* "Active Robots": (United Kingdom) - "Buy Here":
* "Antratek": (Netherlands) - "Buy Here":
* "Barcelona Cybernetics": (Spain) - "Buy Here":
* "Elekronikladen": (Germany) - "Buy Here":
* "Lawicel": (Sweden) - "Buy Here":
* "Innovative Electronics": (Indonesia) - "Buy Here":
* "No DNA": (Germany) - "Buy Here":
* "Probyte": (Finland) - "Buy Here":
* "Robot Italy": (Italy) - "Buy Here":
* "Robot Electronics": (United Kingdom) - "Buy Here":
* "Robot R Us": (Singapore) - "Buy Here":
* "Robot Shop": (America) - "Buy Here":
* "Robot Store HK": (Hong Kong) - "Buy Here":
* "Roboter-Telie": (Germany) - "Buy Here":
* "Robotui": (Spain) - "Buy Here":
* "Sander Electronic": (Germany) - "Buy Here":

h3. *Typical Uses*

The CMUcam4 can be used to track colors or collect basic image statistics. The best performance can be achieved when there are highly contrasting and intense colors. For instance, it can easily track a red ball on a white background, but it would be hard to differentiate between different shades of brown in changing light. Tracking colorful objects can be used to localize landmarks, follow lines, or chase moving beacons. Using color statistics, it is possible for the CMUcam4 to monitor a scene, detect a specific color, or do primitive motion detection. If the CMUcam4 detects a drastic color change, then chances are something in the scene changed. Using “line mode”, the CMUcam4 can generate low resolution binary images of colorful objects. This can be used to do more sophisticated image processing that includes line following with branch detection, or even simple shape recognition. These more advanced operations require custom algorithms to post process the binary images sent from the CMUcam4. As is the case with a normal digital camera, this type of processing might require a computer or at least a fast microcontroller.

h3. *Typical Configuration*

The most common configuration for the CMUcam4 is to have it communicate to a master processor via a standard TTL serial port. This “master processor” could be a computer (through USB or RS232), Arduino, Basic Stamp, PIC, or similar microcontroller. The CMUcam4 is small enough to add simple vision to embedded systems that can not afford the size or power of a standard computer based vision system. Its communication protocol is designed to accommodate even the slowest of processors. The CMUcam4 supports various baud rates to accommodate slower processors. For even slower processors, the CMUcam4 can operate in “poll mode”. In this mode, the host processor can ask the CMUcam4 for just a single packet of data. This gives slower processors the ability to more easily stay synchronized with the data. It is also possible to add a delay between individual serial data characters using the “delay mode” command. Due to communication delays, both poll mode and delay mode will lower the total number of frames that can be processed in one second.