INTRODUCTION
Robotics deals with design, construction, and operation of robots and computer systems for their control, sensory feedback, and information processing. Today, robotics is a rapidly growing field, due to continued research, design, and builds of new robots that serve various practical purposes, whether domestically, commercially, or militarily. Many robots do jobs that are hazardous to people such as defusing bombs, exploring shipwrecks, and mines.
Robotic applications also have been in existence for years in the aerospace industry, with space exploration vehicles and planetary rovers. Two of the most recent robotics system in the aerospace industry is the Robonaut-2 and Curiosity Mars Rover made by NASA (National Aeronautics and Space Administration). Recently, interest has been spurred in the automotive industry for smarter cars. An IEEE Spectrum article dated September 4, 2012 states that intelligent cars could boost highway capacity by 273%.
As a robot becomes smarter and smarter, it starts to learn new things. This approach is called machine learning. The objective of this project was to take the idea of machine learning to the next step and apply it to a real robotic project, to solve a maze. The design goal of this project was to build a robot that will have intelligent sensing abilities to study its surrounding, and the mobility to explore a maze. Finally the robot is able to solve the maze using machine learning, provided only the starting location, destination location, and size of the maze. The robot operates on two user selectable mode. In the first mode, the robot studies and solves the maze. Once the robot solves the maze, it remembers the solution. So, during the second mode the robot can drive from source to destination and vice versa without having to resolve the maze.
In addition to the robotic platform and mice algorithm used to solve a maze, other concepts were also implemented, including EMC and power management. A smaller robot means less space to implement the overall system. This created the additional challenges of designing efficient regulated power sources for the hardware that already needed to build the robotic platform (sensors). The real estate constraints also made addressing EMC issues from various hardware very challenging.
All these challenges made this project very ideal to explore and further understand various techniques and strategies, including digital electronics design, analog electronics design, PCB design, solving EMC issues, and software design.
The robotic platform developed in this project can be used in academia to spur interest in engineering. In addition, this project can also be used by engineering students to appreciate the complexity and intelligence of a full size autonomous vehicle (i.e. Google self-driving car). The concept of machine learning can be used to design and implement smarter and safer automotive and aerospace robotic application.
PROBLEM STATEMENT
General Design Approach
One of the fastest growing field in engineering is autonomous and teleoperated robotics. Advanced electronic features such as line detection, radar assisted cruise control, wireless emergency road side assistance, and assisted parking have all been used by auto makers such as Mercedes Benz and GM for many years. Recently, the interest in cars with more electronic features has grown significantly. The overall goal of all these technologies is to make driving more efficient and safer. The mice team wanted to dive into those technologies. However, time and technical background is a big constraint for any undergraduate senior design project. Therefore, the goal was directed toward designing and building something less complex than an autonomous car, focusing primarily on robust hardware design and machine learning strategies. Based on previous experiences in robotics and technical interests the team decided to build a micro-mouse maze solver robot. The goal was to solve a maze as efficiently as feasible given the available resources (time, technical skills, and money).
There were many different ways to building a micro-mouse maze solver robot. One of the possible strategies was to buy micro-mouse maze solver robot kits and focusing more on the software portion of the project. Another possible strategy was to design and build the micro-mouse maze solver robot hardware and software from scratch.
One of the major goals of senior design is to utilize technical knowledge and experience to “design” and build a product. Furthermore, Zakaria and Ed are very passionate about electronics. They believed the best way to solve a problem is to solve it from the early stage of the project. Therefore, designing and building the hardware and software from scratch was chosen.
The team also wanted to experience the method of product design used in the industry. From co-op work experience from NASA’s Johnson Space Center, Zakaria understood that in any product design and implementation it is very important to be resourceful. The team understood the importance of designing only what is necessary and can make acceptable difference (based on performance, cost, and time). Therefore, the team focused on the overall platform of the robot. The team decided to use IR sensor array (consist of 6 IR sensors on one PCB) among many others (such as quadrature encoders, and voltage regulators) that are already readily available in the market.
Much before the completion of the ideal hardware design, the team evaluated packaging options. There were two available options for packaging. One of the options was to buy or build a platform to mount the hardware/electronics. The second option was to design and build an integrated robotic platform with all the electronics on a PCB. The second option was chosen. Compared to the first option, the second option provided cost saving solution by not requiring additional materials. The second method also made sure the electronics on the PCB are not overheated due to possible thermal management issues from the robot chassis.
In addition to hardware design and implementation, another major task of this project was software design and implementation. There are various approaches such as Flood Fill and Wall Following for solving a maze. Upon extensive evaluation the team decided to implement the Flood Fill algorithm. Flood Fill algorithm provides very reliable results compared to the other algorithms.
Specifications and Engineering Standards
The specifications for this project have been categorized both qualitatively and quantitatively. In addition, some engineering standards were also implemented in the design of this robot.
Qualitative Specifications
Qualitative specifications for this project as follows:
1. Solve an unknown maze autonomously without receiving any external aid
2. Study & Solve Mode
§ Sense surrounding walls and openings
§ Determine and remember path to destination
§ Determine and remember path back to source/starting location
3. Execute Mode
§ Execute navigation from Study & Solve Mode
4. Least thermal dissipation and minimum electromagnetic interference between components
§ This parameter is satisfied if emission from one component does not affect the overall performance of the mice
Quantitative Specifications
Quantitative specifications for this project as follows:
1. Primary power source: 5V to 12V
2. Maximum power consumptions: 36W @ 4A and 9V
3. Power management efficiency > 85%
4. Robot dimensions: 100mm(Length) x 80mm(Width) x 60mm(Height)
5. Robot weight: 500 grams
Engineering Standards
Following are engineering standards that were implemented in this project:
1. C Programming Language
2. USB 2.0
3. PIC Kit 3 Programmer/Debugger
4. Electromagnetic Compatibility (EMC)