Homepage Research Patents Academic Activities Contact me
Functional Robotics and Automation Project
Tutor: Professor Xi Rong, Assistant Professor Wang You, Doc. Zhu Qiuguo
Robotics Training Basement, Zhejiang University
March,2011--July,2011
Introduction:
This training project aims at giving students opportunities to design, make and control robots to finish a certain task. Since such tasks always demand highly of inter-disciplinary abilities of mechanics, electronics and automation. Students of different related majors generally group up to build their team's robot in a limited time, usually 3 weeks. After intensive working and cooperation, robots of different team are tested in a competition where their performance of completing the task is scored. This project lasted through the whole semester during which three tasks are assigned as follow(details are shown in "My role in the project"Section):
Robots aimed for construction of buildings
Robots aimed for collecting garbage
Robots aimed at moving specific objects up stairs
In these projects, students work cooperatively and competitively to make their robots from scratch. Usually different scoring policies make the competition more interesting since game theory are usually implanted in these projects for each team to decide their best move according to their apponents'. After each task, students not only gain new perspectives in their different majors but learin managements and cooperation.
Project Procedure
The General procedure of robotics design can be generalized as follows:
Strategy development
Mechanical design
Circuit design
Control algorithm programming
Field test
Revision (usually such process goes on iteratively)
Specific designs vary according to each task.
My role in the each of the three projects:
Task 1: Robots aimed for construction of buildings
In this task robots are to be able to move square bricks from the upper side to the down side in the field shown in Fig1.The position and the color of each brick has to remain consistent before and after the moving. There are altogether 5 rows of bricks and the number of bricks in each row is 1,3,5,3,1. The bricks has to remain steady, the crumbling of which will add to 0 point unless the robot can automatically put them together according to the original sequences again. There is an additional brick on the ground, collecting which and put it on the 3 row(highest) can earn extra points.Each robot has 3 minutes to finish the task and each row weighs differently according to the number of bricks laid.

Fig 1.Field Fig 2. Robot overview Fig3 Collecting bricks
I'm mainly for developing the best strategy for the robot to gain the highest score, then use embedded programming to realize such strategy most efficiently. I used mega16 as the main controlling chip. In addition to the rountain strategy, I controlled a color sensor, 3 motors (2 for wheels, 1 for collecting claw), 1 steering engine ( for the claw collecting the additional brick), a light detector ( since the group is mainly black and white, it enables us to go according to the white stripes). Fig 2 shows the general idea of our robot. Unfortunately, due to a problematic cooperation mechanically and automatically, our robot didn't really function in the most ideal way. In retrospect, it's my first trial in building an actual robot from scratch, I wasn't so skilled in using multiple external interrupts and timers in my program, which sometimes lead to instability and malfunction of the robot. There are cases when our robot was supposed to detect the color of the brick, it failed to enter the interrupt program and kept going.
Task 2: Garbage collecting robots
This task is originally the competition tast of IDC Robocon held in MIT 2011.In this task, two robots are required to cooperate together to finish the job of collecting small balls under "water" and transport them to a bowl "offshore". (see fig 4 for field) Each team is scored according to the number of balls in the bowl in the limited time of 3 minutes. One of the robots is the collector and the other is the transporter. The robots can be directed by remote control.

Fig 4 Field Fig 5 Hand-made Collector Fig 6. Collecting Robot
My job in this project is understand the signal transmmision protocols between the remote control and receiver and programming control algorithm for the that controls three motors for each car. Different directions generated from the remote control can be received as PWM wave with different duty ratio varying from 1.5ms to 2.5ms. By starting and stopping the timer corresponding to the time of an rising edge and a falling edge, the duty ratio can be calculated. Using such signal to control the running of the motor, we can control the movement of the robots.
Task 3: Robots aimed at moving specific objects up stairs
This task is originally the competition task for IDC Robocon held in MID, 2010. In the field displayed in Fig7. the robot has to finish 3 tasks: push the ball as high up the stairs as possible, throw the ball through the loop and push the lever to its side. click to see official rules...

In this project, the robot is given 15 seconds of free navigation. In order for the robots to receive the highest score, I decided for the robot to first collect the book and use an air cylinder to push the book up. The force generated by the air cylinder is strong enough to push the books all the way to the top. Hence what I need to control is 2 motors for wheels, 1 steering engine for pushing the lever and a air cylinder. I used the mega128 chip to finish such task.