The ZoomTown experiment is all about an experiment being conducted to test concepts of autonomous robots in an autonomous transportation system. Utilizing primarily rpi PICO micro controllers for the robots, the goal is to have 15~20 robots autonomously moving around ZoomTown. A Raspberry PI 4 will be incorporated to control the experiments.
From design, through construction, to testing the concepts and practicality, everything is covered from beginning to end.
Let's explore a different method of controlling traffic by breaking the old rules. The ZoomTown experiment has been about looking at transportation from a different perspective. Getting rid of the human allows for different rules.
With the complexity of this experiment reaching its peak, I wanted to share more updates. This update covers the current status, current outstanding problems, master to do list, and some ideas I am kicking around.
With the ability to track the location of the robots, the Zcheduler is capable of doing MUCH MORE. The most obvious (and what is shown in this video) is the ability to show near real time location of each Zoomie. However, the Zcheduler can now become another "SENSOR" for the Zoomie! The Zoomie has no "vision" of what is going on around it, but it can ask the Zcheduler for some very critical information such as how close other Zoomies are to it. This will play a key role in navigation.
#PICOW #Micropython, #Robotics
See how the Zoomie (robot) interprets the Trip Plan (driving instructions) and executes them. Follow along to see how the Trip Plan is received into the Zoomie via WiFi/MQTT and then processed for execution.
#PICOW #Micropython, #Robotics
This video details the robot driving instruction creation and coding. The robot needs to travel from place to place which is a lot more challenging than you may think. While it is a trivial task to select which roads to travel, there are many more sub-tasks required to get the robot from one road to another.
There will be a follow up video from the Robot's perspective and what happens when it receives these driving instructions.
#PICOW #Micropython, #Robotics
There has been a LOT of work performed on the ZoomTown Experiment in the last couple of weeks. This short (actually less than 8 mins.) video catches you up on the developments of the software and the status of al the Zoomie builds going on.
#PICOW #Micropython, #Robotics
In this episode we will be exploring more about the Zcheduler computer and software.
* Update on status of the ZoomTown Experiment.
* A short "how to" video regarding the Zcheduler computer.
* Explanation of the route planning and a top level view of the code.
#PICOW #Micropython, #Robotics
Phase III of the Zoomtown experiment is beginning. This is the final development phase and this is when everything comes together. Take a look at the whole system in this video.
#PICOW #Micropython, #Robotics
Parking the robotic car (Zoomie) utilizes multiple sensors to get the Zoomie in the correct position. In this video we will cover what sensors are used and why as well as the logic behind the maneuver.
#PICOW #Micropython, #Robotics
Turning can be both simple and very complex. In this video we take a look at the two different turning maneuvers the Zoomie uses. Ultimately, both are really simple and are proving reliable.
#PICOW #Micropython, #Robotics
In this video we explore the idea of using vision tracking to keep track of where all the Zoomies (Robotic cars) are located. There will be up to 16 Zoomies moving about ZoomTown at any given time, each Zoomie will need to have knowledge of the other Zoomie's locations. For example, when backing out of a driveway, the Zoomie will need to know about the cross traffic.
=== NO SOURCE CODE FOR THIS EPISODE! ===
#TinyCodeSensor #UsefulSensors
Based on viewer feedback, we are taking a look at the Tiny Code Reader from Useful Sensors for the purpose of helping with localization. Keeping track of where the Zoomie is within ZoomTown is critical as it is with most robotic applications. We will explore a lot of the details on how this sensor can help with localization.
=== NO SOURCE CODE FOR THIS EPISODE! ===
#TinyCodeSensor #UsefulSensors
The Zoomie has moved up a notch on performance! The line following is very robust, so much so, I can push it nearly 45 degrees off course and it easily corrects course and continues on. Position tracking (localization) has improved significantly using the hybrid system of the AS5600 encoders, TCRT5000 photo reflective sensors, and some A3141 Hall effect sensors. This new method is bringing the project very close to 1mm accuracy!
=== NO SOURCE CODE FOR THIS EPISODE! ===
In this video we will discuss some viewer suggestions and the evolution of the Zoomie. With these new suggestions, will the Zoomie evolve again? One suggestion has to do with the mechanical design of the Zoomie and how it could be modified to turn more accurately. The other suggestion is a sensor that can read markings which would be very useful for localization.
NO SOURCE CODE FOR THIS VIDEO
Localization is difficult, especially when using simple sensors, in this video we will discuss a new concept that combines using: PICO W, Wheel encoders, Photo reflective sensors, Hall effect sensors, and some creative markings to achieve better localization.
Cheers!
Chris
#PICOW #Micropython, #AS5600, A3141, #TCRT5000, Localization
NO SOURCE CODE FOR THIS VIDEO
Based on practical testing many problems have revealed themselves. As with anything, as new information becomes available (learned), you asses the situation and makes changes as needed. This video covers that many problems that currently exist with the current methodology and what is planned to deal with it.
#PICOW #Micropython
NO SOURCE CODE FOR THIS VIDEO
The TCRT5000 photo reflective sensor is great for line following, but based on this test, it could be much more useful in helping with localization too. In this experiment I will use the sensor to also detect a specific point along the line.
NOTE! After filming this story, many problems came up with the original concept of localization for ZoomTown and the importance of this concept rose dramatically. In the next episode, this will be explained in much more detail. But as of the release date of this video, this concept may very well save the ZoomTown experiment!!.
#PICO #Micropython #TCRT5000 #LineFollowing
Like most high-level languages, there needs to be a feature to clean up the mess programmers leave. In low level languages the program is required to clear up unused variables, pointers etc. Micropython's device to automatically do this is called the Garbage Collector. It works great, BUT, it takes time to execute and it can cause intermittent pauses in your program. In this video, we cover this problem in detail with a very real and practical problem and solution.
#PICO #Micropython #garbagecollector
How to use an inexpensive hall effect sensor and magnets to add another means of control to your robotic car. Magnets, embedded in the floor were one the first means of guiding robotic vehicles in industrial applications. In this video we explore using a hall effect sensor and a magnet as a stop sign.
#PICO #Micropython #HallEffect
How to add a basic level of Collision Avoidance to a robot using a PICO W and the GP2Y0E03 Time of Flight Sensor. For the Zoomie, we will be utilizing a Time of Flight sensor to detect object in the path of the robot and to determine how far away the object is. Eventually, this sensor will also be used to help with localization in certain situations.
#PICO #Micropython #GP2Y0E03
Learn how to incorporate line following in a robot as we did with the Zoomie (Autonomous Robot). Gain an understanding of PID controls using just one component (proportional) and how to tune the control system effectively using a spreadsheet. Using 2 TCRT5000 analog photo-reflective sensors, you can achieve accurate line following.
#PICO #Micropython #LineFollowing
Learn how to use encoder feedback to steer a robot. See how we make the Zoomie (autonomous robot) drive in a straight line. In a future story we will also be using the same concept to make precise turns using the same concepts.
#PICO #Micropython
How to incorporate acceleration & deceleration into velocity control for a robot. This video will explain in great detail all about acceleration, the math needed, and how to implement it in a micropython program in a Raspberry Pi PICO.
#PICO #Micropython
How to add AS5600 encoders to a robotic car to get accurate odometry information. Knowing how far a robot has traveled is a key feature to achieving robotic autonomy. The AS5600 encoders are absolute encoders and utilize magnets for high-resolution feedback. These are also very easy to interface with the Raspberry Pi PICO. This video will cover a lot of details about working with encoders, especially absolute encoders and the related pitfalls and maths.
#PICO #Micropython #AS5600
How to do basic motion control for robotic cars. In this episode, we will go over how motion will be controlled giving the Zoomie the ability to move forward and reverse with variable speed control. This will set the stage for much more complex motion control in the next series of videos.
#PICO #Micropython
How to use MQTT on a Raspberry Pi PICO to Communication with a Raspberry PI 3 to remotely control the Zoomie (Autonomous robot). MQTT will play a critical role in The ZoomTown experiment. In this video we will cover the code for the Raspberry Pi Pico W using MQTT to communicate with a Raspberry Pi 3
Source Code
#MQTT #Remote #PICO #Micropython