11.11.2014 Views

RoBOP-a-Mole - helix

RoBOP-a-Mole - helix

RoBOP-a-Mole - helix

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The next set of problems arose from the logic developed to control the robot. The<br />

initial plan for the algorithm was to have the camera system return the centroids of the moles<br />

and the robot would perform a reverse analysis to determine how it needed to move to this<br />

point. It was soon discovered that the robot has extra degrees of freedom associated with<br />

rotating a hammer about an axis parallel to the plane of the platform that were no accounted<br />

for in the RRR reverse algorithm. Even if a complex algorithm to solve the reverse analysis<br />

were created, performing the calculation every time the robot sensed a mole would be very<br />

computationally taxing and could slow the response of the robot. In addition, while using a<br />

reverse analysis approach, singular configurations become a problem, because the robot can<br />

become unstable at these configurations. Aside from the extra degree of freedom of the<br />

robot, using the camera system to identify centroids presented another problem. The<br />

reference frame of the camera and the reference frame of the platform are different. In order<br />

for the robot to be able to whack centroids in the platform reference frame a very meticulous<br />

transform is required to relate the coordinates of centroids the camera sees to coordinates<br />

relative to the robot. Additionally, this transform heavily depended on the height of the<br />

camera which would make the daily setup of the project time consuming.<br />

Next, the project encountered smaller obstacles relating to the specifics in the robot<br />

programming. First of all the there was a small learning curve involved in controlling the<br />

timing of the program. When the robot is supplied an integer 1-9, telling the robot to whack<br />

the corresponding hole, the individual motor commands in MATLAB are not performed<br />

completely sequentially. In other words, when telling the robot to move first and whack<br />

second, MATLAB will begin the movement operation, and then begin the whack operation<br />

without waiting for the movement operation to be completed. This resulted in the robot<br />

whacking while it was translating to a hole. Another small complication arose in the<br />

communication between MATLAB and the DVT. The iterations of the program to have the<br />

robot play the whack-a-mole game happen faster than the camera can update; similarly,<br />

6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!