Robotics is the most direct way that your code can interact with the world.It can read actual sensor information and move real actuators and get real work done. The first thing your robot needs is the ability to sense the world around it. The one sense that we humans feel most useful is sight, With web cameras being so cheap and easy to connect to hardware, Vision is way to give tour robot. The real problem is how to interpret this data, Luckily, you can use the OpenCV project to do just that, It is a vision package that can provide simple image of gathering and processing, to extremely complex functions like face recognition and extraction of 3D objects, You can also use OpenCV to give you robot some reasoning capabilities too, OpenCV includes a set of functions for machine learning, where you can do statistical classification or data clustering, and use it to feed the session trees or even neural networks.
Another Important sense that you may want to use is sound. The Jasper project is one that is developing a complete voice control system. This project would give you the structure you need to your verbal commands. the project has gotten to the point where tou can give it a command and the voice recognition software can translate this into text. You then need to build a mapping of which pieces of text corresponds to which commands to execute
There are lots of other sensor you can use, but all this begins to leave the realm of store brought hardware. Most other sensors like temperature, pressure, orientation or location, need specialized hardware that needs to be interfaced to the computer brain for your robot. This means it is time to get your soldering iron out. As for reading the data in, this is most often done over a basics serial connection, You can then use the pySerial module to connect to the serial part and read data off rhe connection you can use:
Import serial
.... to load the module and start talking to your sensor. The problem is that this is a very low-level way to communicate. You, as the programmer are responsible for all the details. this includes communication, speed,bytes size, flow control basically everything. Som this will definitely be an area of your code
Comments
Post a Comment