Page 313 - Robots Androids and Animatrons : 12 Incredible Projects You Can Build
P. 313

You will notice that as a sequence (script file) is continually re-
                                peated, the position of the robotic arm will drift from its original
                                position. There are a number of reasons for this. As the battery
                                power supply to the robotic arm becomes depleted, the reduction
                                in electric power delivered to the DC motor reduces the torque
                                and speed of the motor. So during a timed function, the motors will
                                not move as far or lift as much with old batteries as they would
                                with fresh batteries. But this isn’t the entire case. Even with a reg-
                                ulated power supply, how many times the DC motor shaft spins in
                                a given length of time is neither counted nor controlled. So the
                                number of turns the motor spins in each timed sequence will vary
                                by a small percentage. This causes the position of the robotic arm
                                to drift. If that wasn’t enough, the gears used in all the motor gear-
                                boxes have a certain amount of slop (or play) that isn’t taken into
                                account. All these factors taken together go a long way in explaining
                                why the position of the robotic arm repeatedly performing a script
                                file will drift over time.


                        Finding home

                                To enhance this project, positional feedback from the robotic arm
                                could be implemented so the computer could determine absolute
           292
                                position of the  arm. With basic  positional  feedback,  the robotic
                                arm can be located in precisely the same position every time at the
                                beginning of a script file (sequence) run.
                                There are many approaches one can take. One basic method doesn’t
                                employ positional control but instead uses limit switches to find a
                                “home” or starting position. The limit switches determine when
                                the arm reaches one absolute, or home, position. To accomplish
                                this, a series of limit switches (momentary contact lever switches)
                                will close when the arm reaches its limit of travel in that particular
                                direction. For instance, one limit switch would be mounted to the
                                base.  This  switch  would  close  only  when  the  robotic  arm  was
                                turned completely in a CW direction as far as it could go. Other
                                limit switches would be mounted on the shoulder and elbow. They
                                would close when the respective joint was fully extended. Another
                                switch mounted to the wrist would close when the wrist was rotated
                                to the furthest CW position. The last switch mounted to the gripper
                                would close when the gripper is fully opened. To reset the arm to its
                                home position, each function is activated in the direction of travel
                                needed to close a limit switch until that limit switch actually closed.
                                After all the functions are in the home position, the computer would
                                then know the absolute position of the arm.


                                                       Team LRN
            Chapter fifteen
   308   309   310   311   312   313   314   315   316   317   318