Zamboni Robot Project

Page 1

Team Astana: Zamboni Robot Project

Team Astana: Zamboni Robot Project

Andrew Burns, Victor Godoy-CortĂŠs, Kelsey Newman, Cody Pederson, Westin Smith Professor Melde 30 October 2009 Engineering 102, University of Arizona

i


Team Astana: Zamboni Robot Project

ii

Executive Summary The goal of this project was to design the lightest working NXT robot capable of picking up fifty randomly placed Lego pieces in under four minutes. The design decided best fit to achieve this goal was a remote controlled robot with a flexible scoop in the front to gather and remove randomly scattered Lego pieces from a 36 inch by 36 inch walled enclosure. This design was very effective. It picked up all of the Lego pieces in a time of 42 seconds while weighing a total of 0.649 kilograms, giving an overall PI of 77.04.


Team Astana: Zamboni Robot Project

iii

Table of Contents Introduction ..................................................................................................................................... 1 Design Requirements ...................................................................................................................... 1 Design Description.......................................................................................................................... 2 Design Justification ......................................................................................................................... 4 System Model ................................................................................................................................. 6 Test Procedures ............................................................................................................................... 8 Test Results ................................................................................................................................... 10 Design Critique and Summary ...................................................................................................... 11

List of Figures/Tables Figure 1 The rink with scattered pieces .......................................................................................... 1 Figure 2 Astana 100 from side ........................................................................................................ 3 Figure 3 Astana 100 from above ..................................................................................................... 4 Figure 4 Program flowchart ............................................................................................................ 7

Table 1 Breakdown of component weight. ..................................................................................... 3 Table 2 Light sensor false positive test ........................................................................................... 9 Table 3 Light sensor desk lamp test ................................................................................................ 8 Table 4 Final test run times ........................................................................................................... 10

References The Zamboni Story. Retrieved October 29, 2009, from http://www.zamboni.com/story/story.html


Team Astana: Zamboni Robot Project Rundell, R. W. (2003). High level of airborne ultrafine and fine particulate matter in indoor ice arenas. Inhalation Toxicology, 15(3), 237-250. doi:10.1080/08958370390158256

iv


Team Astana: Zamboni Robot Project

1

Introduction In 1949, Frank Zamboni patented a single operator ice resurfacing machine—the world’s first self-propelled ice resurfacing machine (Zamboni). The process of cleaning the rink however, involves in scraping a sharp, industrial sharp blade, across the ices surfaces while spraying a mist of wash water (Zamboni). This complex operation is not easy, and a failure could be dangerous. In recent years, many concerns have been raised about the air pollution Zambonis release as they frequently resurface skating surfaces and its harmful effects on athletes (Rundell, 2003); and so each new Zamboni model is subjected to countless tests to create a better, more efficient machine that addresses these concerns (Zamboni). Similarly, the Robot Zamboni Project involves using a Lego-brand robotic device, the NXT, to design, model and test a Zamboni-like robotic device to solve the project’s problem in the most efficient way possible. This project is intended to give students a feel for real world problem solving—through teamwork, problem solving, balancing pros and cons, dealing with cost and technology constraints. Students should finish this problem with a greater understanding of the rigors of the design process. Our team in particular, worked on improving our time management and communication, two skills critical for employment in engineering today. Design Requirements A rink, very similar to an ice rink, was filled with 50 Lego pieces that must be “cleaned” removed from the rink by the robotic device. The success of the robot is measured by dividing the number of pieces it successfully removed from the rink in under four minutes by the weight of

Figure 1 The rink with scattered pieces


Team Astana: Zamboni Robot Project

2

the robot in kilograms. This number was called the performance index, and the goal was to achieve the maximum performance index possible. The project included a few explicit criteria for/constraints on the design of the robot as well: 

The robot must be able to drive itself through the “door” into the 36 inch x 36 inch square rink.

The 50 Lego pieces must be randomly scattered throughout the ice rink.

The 50 Lego pieces vary in size and length.

No external Bluetooth enabled control allowed.

No destroying Lego pieces to create the device.

Additionally, other constraints were implicit in the project set-up. For example, as the robot was controlled by the NXT brick, an item that weighed 0.106 kg, there was an upper limit on the achievable performance index. Also, the environmental conditions such as lighting (the room was not particularly bright) and sound (the room, especially during testing, was especially noisy) limited the degree to which certain sensors could be used. Design Description The final design of our robot sought to minimize weight to the greatest possible extent. Working off of the original thirty-minute robot provided at the start of the project, unnecessary pieces were removed to reduce weight. Weight was a particularly important issue given the goal of maximizing the performance index. Special intention was taken to the weight, and as shown in Table 1, each individual piece of the robot was weighed to examine possible areas for weight reduction.


Team Astana: Zamboni Robot Project

3

part weight (lbs) weight (kg) both motors 0.350 0.159 battery pack 0.234 0.106 brick (without battery) 0.328 0.149 both tires 0.0750 0.034 controller 0.0938 0.043 all cables 0.125 0.057 scooper arms 0.0563 0.026 back wheel and back wheel mounting 0.0375 0.017 remainder 0.125 0.057 single L-shaped piece 0.00625 0.003 TOTAL

1.425

0.649

Table 1 Breakdown of component weight.

As the goal purpose of the device was to remove Lego pieces from the floor of the rink, a scooper, constructed of Lego pieces, was attached to the front of the robot to capture the Lego pieces as it came into contact with them. In our final design, the scooper arm consisted of four pieces that formed an open cup shape, placing two of the pieces at the bottom. The use of two pieces rather than one allowed for minor flexing between the pieces, creating a more adaptive scooper arm. The corners of the rink allowed pieces to be trapped and difficult to extract, so

Figure 2 Astana 100 from side

springs were added to the corners of the scooper arms to address this problem. When the arms touched the wall, the cup shape pulled into a U-shaped and the corner pieces were flipped into the scoop. The scooper arm was mounted so that it barely skimmed the ground. Special effort was made to reduce the weight of the scoop to provide the maximum strength with the fewest pieces. Each redesign of the scoop was tested for sturdiness by gently pushing the robot against a wall until a piece dislodged, and using the and the effectiveness of the scoop was tested by


Team Astana: Zamboni Robot Project

4

running the robot through piles of Lego pieces and adjusting until it no longer allowed pieces to slip behind the scoop. The robot was propelled by two large frontal wheels attached to two NXT motors. A third wheel, attached to a pivot, dragged behind the two front wheels to provide support for the back end of the robot, and to improve the vehicle alignment and ensure it better moved in straight lines. Unlike in the 30-minute robot, in our final design, the servo motors served as the supporting structure. Many of the pieces from the NXT brick mounting and back wheel mounting were removed, and virtually all pieces from the underside of the robot were removed. The NXT brick was placed with the bottom facing upwards at an angle. The scooper arm was attached to an L-piece, which hooked onto both the servo motors and the NXT-brick mounts, making it Figure 3 Astana 100 from above

rigid. As the robot was remote controlled, the cables provided by the set proved too short to comfortably control without tangles. Our solution involved using longer phone cables to the NXT brick to its controller, and using an additional cable fabricated by connecting the cables for the old Mindstorms motors. The shortest cables provided in the NXT set were used to connect the motors to the NXT brick. The controller was built minimally, with the three sensors arranged in a triangle. Design Justification The final design was selected upon recognizing the practical infeasibility of creating a reliable autonomous robot within the limited time provided. Our original design, the product of a lengthy brainstorming session, involved an autonomous robot controlled only by programming


Team Astana: Zamboni Robot Project

5

and sensors. Our final product was remote controlled by touch and light tensors. In getting from our original plan to our final design, our team divided responsibilities based on expertise and resources. Cody, who not only had previous experience with the NXT system, but who also had access to additional Lego pieces, was chosen to be both the team leader and lead designer, in accordance with our team rules. Victor, who had access to the NXT software on his personal computer, was placed in charge of programming the NXT brick, coordinating the design with Cody. Kelsey and Westin were prototype testers and Andrew was charged with photographing the prototypes and recording prototype performance to use in compiling this report and creating the PowerPoint presentation. In general, the team roles were not entirely rigid, and most team members gave input on robot and program design. The final design was deemed far superior, both in its simplicity and efficiency, to various other autonomous robot designs examined early in the design process. Autonomous robots were too easily misdirected by slight variations in initial condition, and their programs required complex iterative programming that required hours of careful adjustments to compensate for various environmental variability, i.e. floor imperfections, unexpected frictional forces, obstructive Lego pieces, etc. In examining the feasibility of autonomous programming, the robot was programmed to turn 360 degrees one direction, move forward, and then move 360 degrees the other direction. This experiment revealed the difficulties with working with autonomous robotics. The most significant of these problems arose from the imprecision of the servos. Initially, it was believed that even if the robot did not turn the same number degrees as the program indicated, it would consistently turn the same number of degrees each turn and, after each test, would end facing the same direction as it began; however, the robot never faced the same direction at the end of this test no matter the number of degrees indicated by the program.


Team Astana: Zamboni Robot Project

6

The two servos provided with the NXT were both imprecise and inconsistent, and these two qualities revealed the failures of the autonomous model. The user-controlled model, however, offered greater flexibility and suffered far less from the variability in servo performance. The final program provided for a complete range of motion: forward, backward, and laterally. Human control added human problem solving skills otherwise unavailable to autonomous robots. It should be noted that, though a few of the modifications used in the final robot appear to contradict the project goal, they were deemed necessary for overall design performance. One such modification is the way the robot's center of gravity is higher in the final design than in the original. This higher center of gravity posed a risk of increased instability and roll-over; however, the team decided that, because the robot did not run on 100 percent power, roll-over was unlikely. To make sure, roll-over tests were performed whereby the robot was ran into the wall of the rink. At no time did the robot appear unstable or at risk of toppling. The design had a higher center of gravity due to the removal of unnecessary Lego pieces, and this design was deemed the best way to reduce the weight of the robot as much as possible. It might seem contradictory then that we decided to add additional weight with longer cords; however, after doing a cost-benefit analysis, the team decided it was better to collect all the pieces quickly with slightly more weight than to have the robot become tangled and fail the task. System Model In choosing a human-controlled, remote control system model, the most important aspect of the system design was the program. The available sensors for the NXT system each carried challenges as a control device. Several were considered and discarded. The light sensor was originally considered as a means of guiding the robot. The light sensor would be affixed to the front and a light shone from the direction of travel. This proved problematic because other


Team Astana: Zamboni Robot Project

7

sources of light interfered and the robot kept running even when no light was shone on it. Eventually, the team settled on a remote control model using touch and light sensor. The touch sensors would direct the robot to move left, right or straight, and the light sensor would instruct the robot to move into reverse. Figure 4 shows a flow chart of the system operation. By reducing the programming down to a set of iterative controls, the complexity was reduced and identifying any system problems was greatly simplified. Careful adjustments were made to the program to ensure that the robot responded at a reasonable speed. Early on, the robot responded too quickly and the pieces were scattered across the rink, but by incrementally adjusting the speed, eventually, a suitable speed was located and the robot performed quite adequately.

Figure 4 Program flowchart

In general, the programming of the robot worked on a trial and error basis. No one in our group was greatly familiar with the intricacies of the NXT software, so this project was a learning experience for everyone. Also, as mentioned earlier, the unreliability of the servos made making adjustments touch-and-go窶馬o one was ever quite sure what the eventual outcome of an adjustment would be just by looking at the program. The program began simply, controlling only


Team Astana: Zamboni Robot Project

8

forward and reverse movements, and gradually, more and more intricacies were added into the program by Victor, with feedback from Cody, so that all of the controls operated correctly and the robot was as agile as possible. Through trial and error, it was determined that the scoop was simply not large enough to capture all the pieces in one go. This meant that the robot needed a reverse. The team decided against the bump solution to reverse because many members expressed concern that, in the heat of competition, discriminating between a bump and push would be overly cumbersome. The light sensor that we had once pooh-poohed as not useful was made viable again as a mechanism to go in reverse. With this new reverse function, we were able to avoid using complex algorithms or directions based on piece density to collect all of the pieces, relying instead on a general counterclockwise move through the rink. Test Procedures In order to confirm that the light sensor would reliably tell if a finger was on it, multiple tests were run. First, to determine when the light sensor would return a false positive, the robot was placed on the floor and set to give light readings. This test was also repeated once with a low Distance From Floor (cm) 5

Trials 2

1

51

3

54

Average Intensity 52

1/√ℓ

Equationbased prediction

0.138

52.109

0.137

52.948

0.137

53.807

0.136

54.687

0.134

55.590

0.133

56.514

52.333 10

51

54

54 53.000

15

51

56

54 53.667

20

52

56

54 54.000

25

55

57

56 56.000

30 -800

56

57

57

56.667 THIS IS A DEMONSTRATIVE ESTIMATE

Table 2 Light sensor false positive test

10.019


Team Astana: Zamboni Robot Project

9

battery. In a second test, the light sensor was placed near a desk lamp and covered with a finger. Readings from three trials for both tests appear in Table 2 and Table 3, respectively. We found the data could be reasonably modeled by a linear regression of distance versus

, where l

represents the relative light intensity. The values for these models also appear in both tables. Distance from Light (cm)

5 10 15 20 25 30 35 40 45 155

1

2

3

Average Intensity

76 83 78 79.000 70 74 71 71.667 62 66 64 64.000 55 54 53 54.000 47 50 47 48.000 44 46 43 44.333 41 43 37 40.333 39 42 34 38.333 39 41 33 37.667 THIS IS A DEMONSTRATIVE ESTIMATE

1/√ℓ 0.113 0.118 0.125 0.136 0.144 0.150 0.157 0.162 0.163

Equationbased prediction 77.610 69.029 61.797 55.644 50.366 45.806 41.837 38.363 35.305 9.829

Low Battery 79 71 62 57 50 48 47 42 40

Table 3 Light sensor desk lamp test

During the build phase, minor testing of how the scooper would react when striking a wall was performed, both with the scooper attached and not attached to the robot. Although these tests were brief, they were vital for observing how the elasticity of the scooper behaved and at what angles the robot could strike a wall and recover. Some testing was done with autonomous robots. This included a crude program aimed to accomplish the design objectives, as well as a simple turning calibration program. The turning calibration program would turn the robot (the amount was estimated to be one full turn), then drive forward and turn the same amount in the opposite direction. Before any testing on the actual robot, the program was briefly run in a free environment to check that everything worked properly. This involved turning the program on and trying the controls to see how the robot would respond. For performing full performance tests, the final testing details were mirrored closely. The robot would start outside the rink, drive itself in, and


Team Astana: Zamboni Robot Project

10

take as many pieces out as it could within four minutes. For these tests, the designated robot controller, Cody, was used. These tests were repeated multiple times. Test Results From our testing of the light sensor, it was determined that it would work accurately when further than 1.5 meters from a desk lamp and within about 10 meters of an overhead light. This represents a good range of working conditions, and during real-world tests the light sensor worked in all but several dark areas. Preliminary tests on the complete robot served primarily to fine-tune the programming. From these tests, it was determined that the reverse speed, turning speed, and light sensitivity should be fine-tuned. These tests also established the need for and dependence on the length of the wires. The final test runs went very well, and were very indicative of the final run. Table 3 reveals the tests returned times consistently under two minutes, and revealed no significant problems in the design. Indeed, the final run went without problems and took only 42 seconds to complete. The performance index for ever final trial run and for the final run was found to be 77.04. Test Number

Time (s) 1 2 3 4 5 6 7 8 9 10

61.78 78.16 103.46 55.15 74.07 59.34 63.36 41.5 54.02 66.12

Table 4 Final test run times


Team Astana: Zamboni Robot Project

11

Design Critique and Summary Retrospectively, we wish we would have shaved more weight off of our robot. While we had considered using only one motor, we never figured out how it could be done. Seeing as one team did it, we now wish we had been more innovative in our design. Apart from that, we cannot think of anything else we would have done differently design-wise. The Astana 100 performed spectacularly, snatching up all of the pieces in less than one minute. As for team dynamics, the team wishes we had procrastinated less. Rushing to complete presentations and projects brings a lot of stress. Otherwise, the team worked well together and everyone contributed equally. Perhaps if we adhered to our team guide more completely, especially the sections on setting meeting agendas beforehand and keeping detailed records of each meeting, the process would have been less hectic. Indeed, it is our goal to more fully embrace our guide next project.


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.