Final Report: Experimental Study of Robotic Assembly and Force Control Tasks
The document describes two experimental studies using a robotic arm: 1) A robotic assembly task using a passive compliant device to mate two components with perfect alignment. 2) A force control application using an active compliant device to apply a predetermined force along a path on various surfaces. It discusses the robotic arm system, controller, user interface, experimental setup and results for each study.
Final Report: Experimental Study of Robotic Assembly and Force Control Tasks
The document describes two experimental studies using a robotic arm: 1) A robotic assembly task using a passive compliant device to mate two components with perfect alignment. 2) A force control application using an active compliant device to apply a predetermined force along a path on various surfaces. It discusses the robotic arm system, controller, user interface, experimental setup and results for each study.
Final Report: Experimental Study of Robotic Assembly and
Force Control Tasks
Student name: Sie Deen Lau ([email protected]) Supervised by: Eftychios Christoforou, Adjunct Faculty, ([email protected]) Department of System Science and Mathematics Engineering, Washington University in St. Louis, Fall 2005
Abstract This report is focused on the examination of two industrial robot applications. The first is a robotic assembly using passive compliant devices and the second is a contact force control application. For each problem an end-effector device was designed, built and tested using a robotic manipulator with five degrees of freedom. The devices are presented together with the experimental results. Table of Contents 1.0 Introduction.................................................................................................................. 1 2.0 Description of XR-4 robotic arm system..................................................................... 3 2.1 The manipulator linkage .......................................................................................... 3 2.2 Actuators and transmissions .................................................................................... 3 2.3 Sensors ..................................................................................................................... 4 2.4 Controllers ............................................................................................................... 4 2.5 User Interface........................................................................................................... 4 3.0 Robotic Assembly using a Passive Compliance Device.............................................. 6 3.1 Problem Description ................................................................................................ 6 3.2 Design of the compliant device ............................................................................... 6 3.3 Execution and Results.............................................................................................. 7 3.4 Implementation Issues ............................................................................................. 9 3.5 Discussion and Applicability................................................................................. 10 4.0 Force Control Device................................................................................................. 11 4.1 Problem Description .............................................................................................. 11 4.2 Design of the force control device......................................................................... 12 4.3 Execution and Results............................................................................................ 13 4.4 Implementation Issues ........................................................................................... 18 4.5 Discussion and Applicability................................................................................. 19 5.0 Safe Operation of the Robotic System....................................................................... 20 5.1 XR-4 robotic arm................................................................................................... 20 5.2 Mark IV Controller ................................................................................................ 20 5.3 Machine and Human Interaction............................................................................ 21 6.0 Conclusion ................................................................................................................. 22 Bibliography ..................................................................................................................... 23 Appendix........................................................................................................................... 24
1 1.0 Introduction Robotic applications are widely used in research laboratories and industries to automate processes and reduce human errors. Some of the tasks performed by robots include assembly lines and motions that require force control with feedback to its controller. This paper describes my senior design project that examines both tasks using a robotic manipulator with five degrees of freedom.
The report is organized as follows:
Chapter 2.0: Description of the robotic manipulator
Chapter 3.0: Robotic assembly using a passive compliance device
Chapter 4.0: Contact force control application using an active compliance device
Chapter 5.0: Safe operation of the robotic system
Chapter 6.0: Conclusion Figure 1: XR-4 robotic arm in home position
To investigate the applications described in Chapter 2.0 and 3.0; for the assembly and force feedback control tasks, I used the XR-4 robotic arm, as seen in Figure 1. Active and passive compliant devices were also designed to demonstrate the two tasks.
In an assembly line, a robotic manipulator is often assigned to move an object from one position to another. One example of this application is in a research laboratory where pipets are used to transport fluid substances from vials to a row of wells on a plate. The automated process results in faster completion time with minimal errors and downtime. Chapter 3.0 of this paper describes the application of an assembly task where two components are mated together with perfect alignment. 2 Chapter 4.0 of this paper describes the implementation of robotic manipulators with force feedback control. This design is necessary when performing tasks that require a pre- determined force to be applied onto a working surface. Applications of the force control mechanism can be seen in manufacturing environments, an example of which is plants where marble surfaces are polished by machines. The use of force feedback control is demonstrated in this paper in two different manipulation scenarios; tracking a path on a level surface, as well as uphill downhill surfaces.
Safety issues related to the use of the experimental robotic arm are presented in Chapter 5.0. Proper machine operations and precautions should be taken by the user when using the robotic arm. Machines used in industry are also equipped with safety mats and parameterized with laser sensors to automatically terminate all movements when a user or object is within its workspace. Finally, Chapter 6.0 concludes this senior design project paper.
3 2.0 Description of XR-4 robotic arm system The XR-4 robotic arm, developed by Rhino Robotics, is a semi-enclosed five axis design with all completely independent axes that can be controlled simultaneously. Powered by six permanent-magnet, direct-current (PMDC) servo motors with integral gearboxes and incremental encoders, the arm executes real time closed loop operations.
In addition, the XR-4 is pre-programmed to return to its home position every time upon startup. This function is used to initialize the incremental encoders which provide feedback information to the controller. The following describe the mechanical parts and controllers of the robotic arm.
Parts of the XR-4 The basic components are: the manipulator linkage actuators and transmissions sensors controllers user interface Figure 2: Mechanical links corresponding to Mark IV Controller labels 2.1 The manipulator linkage There are five manipulator linkages including the end effector which is a gripper connected through rotational joints. The regional and orientational structure of the manipulator produces a roughly spherical workspace. As shown in Figure 2 above, letters A, B, C, D, E, F, and G represent the different links of the manipulator. 2.2 Actuators and transmissions The XR-4 uses electric actuators which are suitable for high speed, low load applications such as surface polishing, force control applications and movements requiring precision. A B C D E F G 4 2.3 Sensors Each motor is equipped with an incremental encoder which provides accurate joint position information to the feedback controller. Also, limit switches protect the XR-4 from moving its end effector to a position outside of its workspace. The end effectors limit switch also prevents damage to the object gripped. 2.4 Controllers The Mark IV Controller, which is also developed by Rhino Robotics Ltd., integrates the power supplies, communication, microprocessor logic, teach pendant support, input/output capability and a software language. Figure 3: Mark IV Controller Connected to the XR-4, the controller uses proportional, integral and derivative (PID loop) control algorithms for full speed control of the robotic arm encoders.
Two main input ports allow a computer and a teach pendant to be connected to the controller as shown in Figure 3. There are also eight line input pairs, eight switches and eight output line pairs to allow external devices to be connected to the controller. The line pairs are labeled 1 thru 8, while the switches are from 9 thru 16. Each input pair is connected to a LED bulb that lights up when input current is detected. 2.5 User Interface RoboTalk is the programming software used to send commands to the XR-4 robotic arm and interpret signals that are received from each encoder. Electrical current signals from the line pairs and switches, caused by interaction between the XR-4 robotic arm and other external devices, are also received by RoboTalk. Also, the software provides built in commands that move the XR-4 end effector to desired positions, specified by either Cartesian positions or encoder counts for each of the manipulator joints.
5 Also, RoboTalk provides a feature to record the encoder counts for each mechanical link for a particular position within the XR-4 workspace. Hence the exact position desired for the end effector can be easily determined for each movement by using the teach pendant to position the end effector at the desired location.
The teach pendant is attached to the Mark IV Controller allows users to operate the XR-4 robotic arm without writing code with a programming software. This is extremely useful to maneuver the end effector to a specific location without requiring the user to know the Cartesian positions or the encoder counts for each mechanical link, prior to the move.
6 3.0 Robotic Assembly using a Passive Compliance Device 3.1 Problem Description One of the applications of robots in industry is to perform repetitive motions with high accuracy. Some applications that require this ability can be seen in the biomedical industry where liquid substances are pipeted into plate wells. The repetitive nature of the process is disadvantageous for a person, since the person will be bored and more prone to making mistakes compared to a mechanical robot that is programmed to perform the particular task.
One practical problem is that the process of mating components requires perfect alignment which is often difficult to achieve using robotic systems. A solution to the problem is to use passive compliance devices attached to the end effector which compensate for certain degree of misalignment. This approach was examined using a device that was designed, built, and tested experimentally as described in this chapter.
Figure 4: Insertion Compliance Device and the mating part; A: Base, B: Spring, C: Tip 3.2 Design of the compliant device The insertion compliance device consists of three parts; the base, spring, and the tip, as shown in Figure 4. The base is held by the XR-4 end effector while the tip is inserted into the hole of a mating part.
One of the challenges of the application is to accommodate a successful insertion motion when the device is positioned slightly off-center over the single well. To resolve the issue, a spring is attached between the base and the tip of the device to provide flexibility to the tip of the device during the insertion. A B C 7 When the device is inserted slightly off-center, the tip would be able to wriggle into the hole without causing damage to the insertion device or the mating parts. Furthermore, the tip of the device and the interior side of the hole in the mating part was rounded to allow for smooth contact and entry into the hole.
3.3 Execution and Results The RoboTalk software was used to write a program controlling the motion of a robotic arm to assemble both parts; mating the insertion compliance device into the hole with high accuracy. An industrial example of this assembling task is for instance in a biomedical lab, when pipeting liquid substances from one source point to a well plate position. To demonstrate the assembly process, a recursive program with the users interaction was written; the program code is available in Appendix I.
Before the execution of the program, the robot was driven to the various physical positions involved in the task using the teach pendant and the Carterian coordinates of each point were recorded. After all the necessary data points were included in the RoboTalk program, a dry run excluding the insertion compliance device and the mating part was carried out to observe the movements of the XR-4 robotic arm. Finally, the assembly task was set up in entirety and the program executed.
Set Up A box with a holder for the insertion compliance device and the mating part are placed about one foot apart in front of the XR-4 robotic arm within its workspace. The robotic arm only starts the assembly task after the user inputs a signal to the Mark IV Controller by flipping the first input switch. After the input signal is processed, the robotic arm executes the following moves in sequence:
1. The end effector moves over to the insertion compliance device position 2. Lowers and closes the gripper over the device 3. Elevates the device above the top of the device holder 8 4. Moves above the mating part 5. Lowers the device into the hole 6. Elevates the device above the top of the mating part 7. Returns to the device holder position (Step 3 above) 8. Lowers the device into the holder 9. Opens the gripper and returns to the position in Step 1 above
The sequence of moves is repeated until the Mark IV Controller first input switch in turned off.
Result Execution of the assembly task was successful with the insertion compliance device inserted into the hole of the mating part even when it was positioned slightly off-center.
The main sequences of the robotic arm motions are shown here: Figure 5a (right): Picking up the insertion compliance device
Figure 5b (below): Moving the device over to the mating part
Figure 5c (below): Lowering the device into the hole of the mating part
9 The rounded tip and the inside edge of the hole together with the spring provided the pair of assembled components with a sliding functionality to connect with very little difficulty, by compensating for small misalignments between the two parts.
Each move was also carried out at a specified velocity ratio of 0.8 the normal XR-4 robotic arm speed to prevent sudden moves. By slowing down each movement, the user was also able to observe the insertion process more carefully to prevent any damage to both the robotic arm and the devices by terminating the process at any given time. The sequences of motions are shown in Figures 5a, 5b and 5c.
3.4 Implementation Issues RoboTalk provides two methods of defining the point coordinates desired to position the end effector; Cartesian and encoder counts. Throughout my senior design, I defined my point coordinates using the Cartesian method, since it is understandable by anyone reading the program.
One of the challenges when developing the program for the insertion compliance assembly problem was the RoboTalk built-in algorithms to move the XR-4 end effector from one point to another. Given two Cartesian points, the XR-4 robotic arm will use the shortest path to move from one point to the other, combined with its feasible manipulator linkage positions in its workspace. Since the insertion compliance device is positioned in its holder, it is necessary to raise the device out of its holder before moving it over to the point of insertion.
The solution was to add intermediate required Cartesian positions about three inches above the device holder and the single well model. By including the intermediate points into the path program, the issue of possibly damaging the devices and well model was resolved. 10 3.5 Discussion and Applicability The insertion compliance device designed here is used to demonstrate a simple assembly model involving two parts that are mated together with high accuracy. Small misalignments between the mating parts are commonplace in assembly tasks due to robot positioning errors and mechanical play between the links of the robotic arm. As a result, compliance devices are usually used together with the robot to compensate for the error effectively.
In industry, robots used in assembly tasks are equipped with similar compliance devices. An example would be in a laboratory where a robotic arm uses pipets to transport fluid substances from one source location to a row of well plates. The compliance needed here is to allow the pipets to accurately mate with the holes of the well plate before releasing the substance into the holes. To achieve this, the end effector of the robotic arm is equipped with a compliance device to move into the hole. Also, the compliance reduces the chances of damaging both mating parts since both parts will not be forced into one another, but rather guided to mate together.
11 4.0 Force Control Device 4.1 Problem Description Another application of robots in industry is to maintain contact and regulate the force applied onto a surface, such as polishing a surface without causing any damage. In the second part of my senior design, the task was to develop a device to apply force onto the surface while tracking a continuous path. To demonstrate the force control device designed, I have separated the task into two sub-problems; track a path on a level surface, and track a path uphill and downhill.
The following describes my design of a force control device that holds a ball pen head and uses force control to apply the desired force to track a given path. The first sub- problem traces a path of a two inch square on a level surface, while the second traces a two inch uphill and downhill path.
Figure 6: Force Control Device. There are mainly two components: stationary and mobile. Parts 1, 4, 5 are stationary and move together with the XR-4 end effector. The remaining parts are mobile and move in response to the elevation of the contact surface. The following is a part by part description of the force control device.
1: Back support holder 2: Ball pen head 3: Pen ink holder 4: First limit switch 5: Second limit switch 6: Dowel 7: First switch trigger 8: Spring 9: Second switch trigger
1 8 7 6 4 3 2 5 9 12 4.2 Design of the force control device As shown in Figure 6, the force control device consists of mainly two parts: a back support holder held by the XR-4 end effector, and a cylindrical pen holder in the center of the support holder, that moves independently, in response to the elevation of the contact surface. The stroke for the latter is constrained by limit switches attached to the ends of the back support holder.
A spring is placed through the pen ink holder in between the two limit switches, which are normally open, to regulate the pressure when the ball pen head is in contact with a surface. At rest, the spring is under a little tension to minimize displacement error of the tip of the ball pen head with respect to the support holder. When the tip of the ball pen head is pushed against a surface, the first switch trigger moves upwards; causing the spring to be compressed against part of the support holder, increasing the spring tension. By keeping the first switch trigger in place with a dowel, the maximum length of the spring at rest can be maintained.
Figure 7: Force Control Device; Close up of the first and second limit switch sensors.
The first limit switch, near the tip of the force control device, is closed by default to represent a no-surface-contact situation. When this switch is open, it represents the situation where there is at least minimal contact between the ball pen head with a surface.
On the other hand, the second limit switch, near the top of the force control device is open by default to represent a situation where the force applied onto the surface has not 13 exceeded the maximum allowed. Once the switch is close, it means the device is applying the maximum force allowed before causing damage to the surface and itself.
There are three different limit switch output combinations that correspond to unique contact situations between the tip of the ball pen head and a surface. These output combinations require different responses from the XR-4 robotic arm during the tracking process.
Switch 1 closed, Switch 2 open: There is no contact between the tip of the ball pen head and the surface, or there is insufficient pressure applied to the surface to start the tracking procedure. The XR-4 robotic arm should respond by lowering the force control device to apply more pressure to the contact surface.
Switch 1 open, Switch 2 open: The pressure applied to the surface is optimal for the tracking procedure. The XR-4 robotic arm should respond by either starting or resuming the tracking procedure.
Switch 1 open, Switch 2 closed: There is excessive pressure applied to the surface, which might cause damage to the surface or the force control device itself. The XR-4 robotic arm should respond by raising the force control device to relieve pressure to the surface.
4.3 Execution and Results To demonstrate the force control application, the RoboTalk software was used to develop programs to perform both sub-problems. Two of the line input pair ports were also used to receive signals from the two limit switches attached to the force control device; line input 1 corresponds to the first switch, and line input 2 to the second switch. The program code that governs the motion of the XR-4 robotic arm is available in Appendix II 14 Track a path on a level surface In this first part of the force control application, the objective is to use force control concepts to draw a two inch square on a level surface using the force control device. The following describes the execution of the program code:
1. Wait for the user to turn on the first switch on the Mark IV Controller. After the first switch is on, the end effector moves to the starting position for the tracking procedure and the computer outputs a beeping sound upon reaching the position. 2. A user places the force control device in the end effector and turns on the second switch on the Mark IV Controller, triggering the end effector to close its gripper. Another beeping sound indicates that the end effector is closed over the device.
Figure 8a: XR-4 in force control; track a path on a level surface
3. A clamp is manually attached over the gripper to strengthen the grip over the force control device. This is done to minimize the sliding error between the device and the end effector during the Figure 8b: Clamp is manually tracking procedure. The next attached over the gripper sub-section; Implementation Issues, explains the need for this step. 4. The second switch on the Mark IV Controller will have to be turned off before the tracking procedure can begin. 5. A built-in feature of RoboTalk, the search command, is used to move link E in 0.1 inch increments in either direction of the mechanical link to search for a 15 surface to write on. When the ball pen head is pushed against the surface contact with enough force to open the first limit switch on the force control device, the signal to the Mark IV Controller first line input is disconnected; indicating that there is at least minimum force applied onto the surface and that the tracking procedure should commence. 6. After the tracking procedure completes the two inch square, the end effector is raised two inches from the surface and the computer produces a beep. 7. Finally, the user will remove the clamp over the gripper and turn off the second switch on the Mark IV Controller, causing the gripper to release the force control device and return to its home position.
Figure 9: Results of the path tracked on a level surface using the force control device
As shown in Figure 9 above, by using the force control device, the path of a two inch square was tracked by the robotic arm. The inaccuracies of the square, as seen where the edges meet is caused by sliding errors between the gripper and the force control device during the tracking motion.
16 A B Track uphill and downhill In the second part of the force control application, I explore the capability to shift the position of the force control device relative to the elevation of the surface, by developing a program code to track a straight line uphill and downhill. The hill is simulated by placing a stack of paper at an angle, as shown in Figure 10. Also, the ball pen head at the tip of the force control device is replaced with a roller to provide smooth Figure 10: XR-4 in force control; contact with the surface; seen in Figures 11 track a path downhill and uphill
Figure 11 (b): Close-up of the tip A: Roller, B: Roller support attached to the tip Figure 11 (a): Ball pen head replaced with a roller constructed from LEGO pieces
The setup and teardown procedure to place and remove the force control device from the end effector is similar to the force control application; all the steps described in the sub- section above except for step 5 and 6, the tracking procedure.
17 The following describes only the tracking procedure for the uphill and downhill force control tracking: 1. The same built-in search feature as described in the section above is used to search for a contact surface to write on. When the first limit switch is open, the tracking procedure begins, and the end effector moves the force control device toward itself in increments of 0.1 inch. 2. In between each incremental step, the program code checks the status of the two limit switches on the force control device, to determine the next move. Refer to the Design section for Force Control to review all limit switch output combinations and responses by the XR-4 robotic arm. 3. During the downhill tracking, the spring of the force control device will decompress, closing the first limit switch. The program code will prompt the XR- 4 robotic arm to continue searching for the surface. When the first limit switch is open again, the tracking procedure will proceed from its last tracking point. 4. The uphill tracking typically causes the spring to compress even further, pushing the pen holder upwards to the second limit switch. When the second switch is triggered, the program code will cause the XR-4 to reevaluate its next move; raise the force control device until the second limit switch is open again. 5. Once the tracking procedure is complete, the end effector is raised two inches from the tracking surface, and the user can proceed with removing the force control device.
Figure 12: Results of the path tracked on an uphill and downhill surface 18 To view the results of the path tracked on an uphill and downhill surface, a carbon copy sheet was placed on the hill while the robotic arm tracked the path on the uneven surface. When the tracking procedure was complete, the bottom copy of the carbon copy was taken out to evaluate the results. Figure 12 shows the path tracked on the carbon copy sheet.
4.4 Implementation Issues Several design and mechanical challenges were encountered throughout the construction and execution of the force control application. The following are two major challenges and the solutions I chose to manage the situation:
Due to the constraints on the XR-4 robotic arm workspace, and the size of the force control device that is large relative to the robotic arm, it was easier to include user interaction in both sub-problems; to put the device in the XR-4 end effector manually instead of programming the robotic arm to pick up the device from a given location. Therefore an intermediate pause was added to the program code to allow the user to attach the force control device to the end effector. Once the device is held in place, the user will trigger a switch on the Mark IV Controller to close the gripper. Similar user interaction is involved to remove the force control device at the end of the tracking procedure.
Another issue was that the XR-4 gripper can only apply a limited amount of force onto the object held, for safety purposes to prevent damage to the object. Since the force control device is fairly long, each sliding error between the object and the gripper propagates a bigger error to the tip of the device that writes on the contact surface. This challenge was encountered during the first part of the force control application, when the device would slide slightly under the friction between the tip of the device and the contact surface. The slight shift caused the tip of the device to stray away from the tracking path by a considerable amount. By attaching the external clamp onto the gripper after the force control device is held by the end effector, the sliding error was reduced. 19 4.5 Discussion and Applicability Force control mechanisms are implemented widely in production and manufacturing companies; for polishing surfaces in a car factory, and sealing packages and boxes in the food industry. Robots with active compliance are typically used to determine the next appropriate task, whether to proceed with the next step or reevaluate the situation before doing so.
My force control design and application demonstrates the practice of force control in industry, where an active compliance device is needed to provide feedback to the robotic arm and the successive motions of the robotic arm is governed by the interpretation of the signals received from the device. Also, the force feedback control device demonstrated in this section can be adapted to involve tracking any given path on uneven surfaces.
20 5.0 Safe Operation of the Robotic System Safety is extremely important to ensure the users wellbeing when executing an application involving machine devices and robotic applications and also protect the equipment itself. Injuries that occur at laboratories and workplaces usually either result from the users negligence or misuse of the machine equipment. The following discusses the built-in safety functionality of the XR-4 robotic arm, the Mark IV Controller and RoboTalk, the programming software.
5.1 XR-4 robotic arm At startup, when the robotic arm is connected to a power outlet, the end effector of the XR-4 resets its encoder count by closing and opening the gripper. The encoder count recorded during this process will be interpreted as the relative open and close positions for the end effector. This step also ensures that any object left in the gripper is released before the start of a mechanical move.
Limit switches are attached to each mechanical link to terminate a move when excessive torque is applied between links. The condition usually occurs when the user enters a command to move the end effector to a position that is outside of the workspace. A position that requires unfeasible intermediate combinational movements for the mechanical links will also terminate the most current move command. This prevents the execution of any movement that might damage the XR-4 robotic arm.
5.2 Mark IV Controller The Mark IV Controller, which sends and receives signals between the XR-4 and all external devices, has built in current surges that will prevent the direct flow of a high voltage. This protects the XR-4 robotic arm from any short circuits caused by malfunctions from any external devices that are connected through the eight input and output line pairs. Each line pair is also grounded for the same purpose. 21 5.3 Machine and Human Interaction Although the XR-4 robotic arm and all other devices are equipped with built-in safety features, user awareness of the correct utilization of the machine is just as important. The user should always perform a dry run of each program application without actual external devices to prevent any unexpected movements of the robotic arm. By doing so, the user will be able to evaluate the program execution and refine the program code if necessary. An emergency stop button is also provided on the teach pendant to terminate the execution of program code.
Other safe regulations that should be followed include removing unused objects from the robots workspace during the runtime operation of the system. Enclosing guards, photo electric light curtains, and pressure sensitive safety mats are some of the safety implementations used in industrial places with robotic applications, to prevent the execution of the programmed robot when a foreign object or person is located in its workspace. In the situation where these safety implementations are not available, users and operators of the robotic system should stand away from all robotic moving parts to avoid injuries.
Another safety feature involves shutting down the robotic system properly and disconnecting the power outlet when setting up the workspace environment before executing a robotic program. Similar practices should be performed when carrying out routine maintenance checks on the robotic system to avoid any sudden electrical surge damages.
22 6.0 Conclusion In my senior design project, I have used the XR-4 robotic arm to demonstrate two applications of robotics in industry; components assembling and using force control to perform tasks such as tracking a given path while maintaining contact with a surface.
The insertion control device demonstrated the usefulness of passive compliance devices in assembling tasks by compensating for any misalignment between the mating parts. In addition, performing such tasks using robots avoid the passive repetition of the movement that would bore a person assigned to the task and minimize human errors throughout the process. Meanwhile, the XR-4 robotic arm is able to perform the task continuously without tiring and with minimal errors.
The force control device proposed can provide a suitable solution in robotic applications in industry where a constant amount of force onto a surface contact is required to accomplish a task, such as polishing a surface. Requirements for such a task would be impractical for a person to carry out since it is impossible for a person to gauge and maintain the amount of force that is applied onto a surface. Therefore active force feedback control devices are usually used in industries.
With the advancement of robotic technology, more tasks are being performed by robots to reduce the execution time and minimize human errors, such as slips caused by exhaustion and negligence. Utilization of robots also reduces downtime by performing a task continuously until it is shut down for maintenance or at the completion of the assigned task.
24 Appendix Appendix 1: Program code for Insertion Control Device application
WAITFOR 9,-10 OPEN -1 10 GOSUB 300 GOSUB 200 CLOSE -1 GOSUB 300 GOSUB 600 GOSUB 500 GOSUB 600 GOSUB 300 GOSUB 200 OPEN -1 GOSUB 300 MOVE TO 0,0,0,0,0 IFSIG 9 THEN GOTO 10 END
200 REM lower over the device MOVEXS 3.5,16,4.25,.8 RETURN 300 REM move end effector over the device MOVEXS 3.5,16,8.5,.8 RETURN 500 REM lower device into the well MOVEXS -2.61,13.03,4.25,.8 RETURN 600 REM move to position over the well model MOVEXS -2.61,13.0,3,6,.8 RETURN
Appendix 2: Program code for Force Control Device Tracking a path on a level surface
REM wait for user to begin execution WAITFOR 9,-10
REM move to start position OPEN -1 MOVEXS 0, 16, 2, 0.8 MOVE 1200,3000, 0, 0, 0 BEEP
REM wait for user to place device in position WAITFOR 10 CLOSE -1 BEEP REM wait for user to attach the external clamp
WAITFOR -10
REM draw horizontal line FOR LINE = 1 TO 20 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX -0.1,0,0,0,0 NEXT
REM draw vertical line FOR LINE = 1 TO 20 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX 0,-0.1,0,0,0 NEXT
REM draw horizontal line FOR LINE = 1 TO 20 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX 0.1,0,0,0,0 NEXT
REM draw vertical line FOR LINE = 1 TO 20 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX 0,0.1,0,0,0 NEXT
25
REM elevate the device by two inches MOVEX 0, 0, 2, 0, 0 BEEP WAITFOR 10 OPEN -1
REM move to home position MOVE TO 0,0,0,0,0 END
REM lower device 20 SEARCH E,-10,-1 TYPE "finding surface- moving down" TYPE Z RETURN
REM raise device 30 SEARCH E,10,-2 TYPE "moving away from surface-moving up" TYPE Z RETURN
Appendix 3: Program code for Force Control Device - Tracking a path uphill and downhill
REM wait for user to begin execution WAITFOR 9,-10
REM move to start position OPEN -1 MOVEXS 0, 16, 6, 0.8 MOVE 1200,3000, 0, 0, 0 BEEP
REM wait for user to place device in position WAITFOR 10 CLOSE -1 BEEP
REM wait for user to attach the external clamp
WAITFOR -10
REM draw a vertical line downhill FOR LINE = 1 TO 25 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX 0,-0.1,0,0,0 NEXT
MOVEX 0,0,2,0,0 MOVEX 1,0,0,0,0
REM draw a vertical line uphill FOR LINE = 1 TO 25 IFSIG 1 THEN GOSUB 20 IFSIG 2 THEN GOSUB 30 MOVEX 0,0.1,0,0,0 NEXT
REM elevate the device by 2 inches MOVEX 0, 0, 2, 0, 0 BEEP WAITFOR 10 OPEN -1
REM move to home position MOVE TO 0,0,0,0,0 END
REM lower device 20 SEARCH E,-10,-1 TYPE "finding surface- moving down" TYPE Z RETURN
REM raise device 30 SEARCH E,10,-2 TYPE "moving away from surface-moving up" TYPE Z RETURN