1. Introduction
The need for automation in industries has been increased in order to get good productivity and profit. In the early days the application of the robots became confined to handling, pick-and-place, assembly, small-batch welding etc. But nowadays the robots are used in many fields like food processing, medical science, space exploration, warfare and even entertainment. In bakery automation, Cartesian robot can be used for cutting of soft materials like cake. A typical robotic cutting system may not be intelligent and will be working on the commands of the operator. The purpose of the work is to maintain and implement a Cartesian robot for cutting soft materials which is provided intelligence to decide and implement the cutting as per the customer requirements. A Cartesian coordinate robot has three principal prismatic axes (X, Y and Z) that are at right angles to each other as shown. Cartesian coordinate robots with the horizontal member supported at both ends are sometimes called Gantry robots. They are often quite large. Gantry robots usually hang upside down. Both Cartesian and Gantry robots have a rectangular work envelope. Because of the highly rigidity, the Cartesian/Gantry Robots are very accurate and repeatable but they lack flexibility as they cannot reach around objects. Due to their mechanical structure, these robots are very easy to program and visualize. However, they require large volumes to operate. Their linear joints are difficult to seal and this makes them unsuitable for working in damp and dusty environments. The Cartesian Coordinate Robot’s simple design and straightforward operation make it highly desirable in manufacturing. Because the individual axes can be easily replaced, downtime is reduced and maintenance costs are kept to a minimum. In addition, the entire system can be disassembled into its component parts for use in multiple single-axis applications. Most importantly, Cartesian Coordinate Robot systems are inexpensive compared to other more expensive and more complex robots.
Jouaneh et al. (1997) in their paper presented a flexible automated foam cutting system accomplished by a 5 axes Gantry Type Robot system. Based on the provided tool data and cutting block information, path planning algorithm converts block information into a detailed set of movements required to machine the work piece. Gasparetto and Zanotto (2010) proposed an algorithm for optimal trajectory planning of robot manipulators in 6-d.o.f. robot Cartesian gantry manipulator. Multiple objective function of squared jerk and the execution time are minimized by means of sequential quadratic programming techniques. Egmont-Petersen et al. (2002) dealt with the major applications of neural networks in image processing and the major strengths and weaknesses of neural networks for solving image processing tasks. Neural network plays important role in preprocessing (Image reconstruction, image restoration, and image enhancement), Image compression and feature extraction, Image segmentation and object detection, Image understanding, Optimization problems. Rahul and Ajith (2018) studied about the compact heat exchangers for improving the performance of the system. The findings of this study may serve as a helping tool to develop a correlation for fluid flow in offset strip fin geometry. Chai et al. (2009) dealt with daptive Neural Fuzzy Inference System (M-ANFIS) and weight updating formula in fuzzy neural networks. M-ANFIS model adopts Mamdani fuzzy inference system which has several advantages. M-ANFIS has great advantages in non-linear modeling, membership functions in consequent parts, scale of training data and amount of adjusted parameters. Vishnu et al. (2021) studied about the initial conditions of damage tolerance of space aircraft and the findings of that can be related to the current study. van Albada et al. (1995) dealt with a self-calibrating measuring system based on a camera in the robot hand plus a known reference object in the robot workspace. The camera positions for all images plus the parameters of the camera are solved together in a non-linear least-squares fitting procedure. Kumar and Kunjunni (2021) proved that linearly increasing temperature along the height will give better heat transfer results which can be used in this study. Carelli et al. (2006) dealt with the design of a stable non-linear control system for the remote visual tracking of cellular robots. A fixed vision camera monitors the robot evolution on the work plane, and the controller uses image measurements to drive the vehicle. The concept of visual impedance with fictitious forces is used here to modify the desired velocity. From the literatures, it was clear that, articles corresponding to the visual servoing of the soft material cutting Cartesian robot are less available.
2. Objectives
The main objective of this paper is the maintenance, implementation of a four degree of freedom Cartesian robot for soft material cutting according to customer requirements. It includes 2D image processing and analysis which comprises the development of an image processing algorithm for performing the real time analysis of captured data of the soft material. It also includes joint angle estimation by fuzzy logic and neuro-fuzzy (ANFIS) based approaches and the comparison between both approaches. After the estimation of joint angles, the cake was cut and the weight of the cake was compared with the actual weight. The schematic diagram of the soft material cutting robot is shown in Figure 1.
3. Design and modeling of robot
The robot was modeled considering both kinematic and dynamic approach. The kinematic modeling was carried out using Denavit and Hartenberg (D-H).
The kinematics analysis of the manipulator, which has a fixed base and 4 links (module X, module Y, module Z, Arm and End-effector) with three degrees of- freedom in translational movements, is referred in the Joint Space Coordinates. The D.H modeling is shown in Figure 2 and its various parameters are shown in Table 1.
The dynamic equations of a robot describe the relationship between torque and other motion parameters. Dynamic analysis is carried using Euler-Lagrange method in order to determine actuator torque for each joint. The Lagrangian function L= K - P where K is the kinetic energy function and P is the potential energy function. The Euler Langrange formulation is expressed in equation 1.
The base and frame is the basic structure that holds everything together. The frame and base is made out of a number of different materials like mild steel and hard nylon sheet. The frame of the Cartesian robot is fabricated in 20 mm mild steel square pipe welded to form the gantry structure.
The gantry structure/frame is having a dimension of 30 × 30 cm. The main frame houses the X axis motor fixture and the X axis guide shaft. The platform is made in 10mm thick nylon sheet on which the object to be cut is placed. Camera is kept in such a way that it scans the entire workspace.
The X, Y, and Z movement for the positioning the blade to the centroid position is shown in Figure 3. After positioning the desired cut is made by the blade at different angles.
4. Image processing
The image is acquired by the digital camera which is placed at the top of the hardware so that it scans the entire workspace. The image is processed in a series of steps in order to get the required data, i.e., size of the image, its centre co-ordinates and edges. The image processing comprises of capturing the image, image subtraction, thresholding and the edge detection using Prewitt edge detection. The image processing algorithm starts with the capturing of the real time image using the digital camera. The schematic diagram showing various steps in the image processing algorithm is shown in Figure 4.
Edge detection is carried out by Prewitts edge detection algorithm. Prewitt operator is a discrete differentiation operator, computing an approximation of the gradient of the image intensity function. Prewitt operator uses two 3×3 kernels which are convolved with the original image to calculate approximations of the derivatives in the horizontal and vertical directions. If we define A as the source image, Gxand Gy and are two images which contain the horizontal and vertical derivative approximations and they are computed as shown below.
The gradient of the image A at location (x, y) is shown below
The advantages of the Prewitt edge detection are the simplicity and the detection of edges and their orientations. After detecting the edges a code was written in MATLAB to find the centroids of the cake kept on the platform so that the joints can reach the centroid position. The image processing operations using this algorithm is shown in Figure 5.
5. Joint angle determinations using fuzzy logic
The inputs to the Mamdani fuzzy inference system are the centroids of the cake and the outputs are the corresponding arm movements in the x, y, and z directions. Triangular membership functions are used here and the defuzzification method used here is centroid method. The schematic representation of the steps in fuzzy logic is shown in Figure 6.
The Simulink model with centroids as input and arm movements as output with fuzzy logic controller is shown in Figure 7.
6. Joint angle determinations using neuro fuzzy
ANFIS tool box in MATLAB 2009 was used for the simulation purpose. ANFIS is generally used for Multiple Input Single Output systems (MISO). For Multiple Input Multiple Output systems (MIMO) multiple ANFIS structures must be created. In this work the centroid positions of the cake are the input and corresponding arm rotations are the input. For three inputs- three output systems three ANFIS structure are created as shown in Figure 8.
Here the membership functions are trained using training data sets. The centroid coordinates of the soft material are obtained after image processing and analysis. The respective arm movements in order to reach the centroid position are obtained from inverse kinematics. Training data sets consists of centroids (x, y and z) as inputs and corresponding arm movements as output.
ANFIS architecture used in this work has five layers as shown in Figure 9. The first hidden layer is responsible for the mapping of the input variable relatively to each membership functions. The operator T-norm is applied in the second hidden layer to calculate the antecedents of the rules. The third hidden layer normalizes the rules strengths followed by the fourth hidden layer where the consequents of the rules are determined. The output layer calculates the global output as the summation of all the signals that arrive to this layer. The Simulink model with centroids as input and x arm movement as output with fuzzy logic controller is shown in Figure 10.
Here in the simulink model the inputs are centroid (x, y, and z) and the fuzzy controller with rule viewer contains the modified rule base after ANFIS training. For getting y and z arm movements two different ANFIS structures are to be created with centroids as inputs and corresponding arm movements as outputs. By ANFIS training the membership functions are modified.
7. Experimental methodology
The cake was kept on the platform of the Cartesian robot interfaced with computer as shown in Figure 11. The image of the cake was acquired by the digital camera kept on the frame. The camera provides the real time image of the cake and by using image processing algorithm edge of the cake was detected and the centroid positions were calculated. Then the centroids were given as input to the inference system and the output obtained were the arm movements which were converted to equivalent joint angle rotations by obtaining relation between belt and pulley arrangement. The joint angles necessary for the positioning is obtained though the arduino uno controller in the form of time delay. By giving the time delay for each arm the blade is made to reach the centroid position and the rotation is given to the blade for making cut according to customer requirements.
The sequence of steps for cake cutting is shown in Figure 12.
The outputs from the inference system were the corresponding arm movements to reach the centroid position. In order to calculate the equivalent joint angle rotations a relation between pulley and belt arrangement was obtained.
Point contact of belt with pulley =
For 180 degree rotation the distance moved by modules =
For L centimeter movement the rotation of motor=
Number of revolutions for the desired movement =
The entire robot arm movements are powered by servomotors which operate on 5 V constant DC voltage supplies which is provided by SMPS (Switched-Mode Power Supply).The SMPS along with Arduino UNO controller is shown in Figure 13. Connection between PC and Module is established with a USB cable. The ports of the servomotors connected are specified and the specific time delays corresponding to different joint angle rotations are given in order to reach the centroid position.
Once selected the correct serial port and board using the code the Arduino boards will reset automatically and begin the upload, i.e., it gathers the necessary information about the port and the home position of the servomotor. A small program that has been loaded on to the microcontroller on the board allows uploading the code without using any additional hardware.
8. Results and discussions
After the edge detection the area and the centroid of the cake was obtained and for reaching the centroid of the cake, the specific joint angle was computed. Equivalent joint angles are calculated by obtaining relation between the pulley rotation and belt movement in the belt and pulley arrangement. Table 2 shows the equivalent joint angle rotation for each desired movement.
Cx | Cy | Cz | X |
|
Rev | Y |
|
Rev | Z |
|
Rev |
---|---|---|---|---|---|---|---|---|---|---|---|
12.1 | 8.6 | 1.5 | 5.74 | 438.7 | 1.22 | 1.6 | 122.2 | 0.34 | 8.7 | 433.6 | 1.2 |
14.8 | 15 | 4.3 | 7.79 | 595.4 | 1.65 | 7.3 | 557.9 | 1.55 | 6.7 | 333.9 | 0.1 |
10 | 13 | 9 | 3.1 | 236.9 | 0.66 | 6.5 | 496.8 | 1.38 | 2.01 | 99.69 | 0.27 |
12 | 14.1 | 7.5 | 5.6 | 428 | 1.19 | 7.57 | 578.5 | 1.61 | 3.3 | 164.4 | 0.46 |
9.1 | 7.5 | 3.4 | 2.9 | 221.6 | 0.62 | 1.45 | 110.8 | 0.31 | 7.4 | 368.8 | 1.02 |
7.5 | 12 | 6.9 | 1.45 | 110.8 | 0.31 | 5.6 | 428 | 1.19 | 4.06 | 202.3 | 0.56 |
17.1 | 10 | 4.25 | 10.9 | 833.1 | 2.31 | 3.3 | 252 | 0.7 | 4.5 | 336.5 | 0.93 |
16.4 | 16 | 7.8 | 9.67 | 739.1 | 2.05 | 9.22 | 704.7 | 1.95 | 2.8 | 139.6 | 0.39 |
11.5 | 14.8 | 5.1 | 5.18 | 395.9 | 1.01 | 8.04 | 614.5 | 1.71 | 5.8 | 289.1 | 0.8 |
For continuous rotation motors the particular joint angles are obtained by giving a specific time delay in the arduino code and so the relation between the time delay and joint angles for different arm movements have been obtained as shown in Tables 3, 4 and 5.
TIME (s) | DISTANCE TRAVELLED (cm) |
|
---|---|---|
1.5 | 4.6 | 351.5 |
2 | 5.2 | 397.4 |
2.5 | 6.1 | 466.2 |
3 | 7.6 | 580.8 |
3.5 | 9.3 | 710.8 |
3.2 | 8.6 | 657.3 |
2.25 | 5.6 | 428 |
TIME (s) | DISTANCE TRAVELLED (cm) |
|
---|---|---|
0.5 | 1 | 76.4 |
2 | 4.2 | 321 |
2.5 | 5 | 382.1 |
3 | 5.6 | 428 |
3.25 | 6.3 | 481.5 |
3.5 | 6.8 | 519.7 |
4 | 8.1 | 619.1 |
TIME (s) | DISTANCE TRAVELLED (cm) |
|
---|---|---|
0.2 | 0.5 | 24.9 |
0.4 | 1.1 | 54.8 |
0.5 | 1.4 | 69.7 |
0.8 | 2.2 | 109.6 |
1 | 4.6 | 229.2 |
1.3 | 6.3 | 314 |
1.5 | 6.6 | 328.9 |
Comparison between fuzzy logic and neuro-fuzzy approach was done for different centroid positions. Table 6 shows the joints angles needed to reach the centroid position for both approaches and the actual situations. The variation between the fuzzy logic and ANFIS approach is shown in Figures 14, 15 and 16.
FUZZY | ANFIS | ACTUAL | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Cx | Cy | Cz |
|
|
|
|
|
|
|
|
|
12.1 | 8.6 | 1.5 | 496.8 | 244.5 | 408.7 | 438.7 | 122.2 | 433.6 | 412.7 | 129.9 | 423.7 |
14.8 | 15 | 4.3 | 512.1 | 542.6 | 274.1 | 595.4 | 557.9 | 333.9 | 570.7 | 565.6 | 309 |
10 | 13 | 9 | 412.7 | 512.1 | 124.6 | 236.9 | 496.8 | 99.69 | 275.1 | 458.5 | 89.7 |
12 | 14.1 | 7.5 | 496.8 | 515.9 | 224.3 | 428 | 578.5 | 164.4 | 412.7 | 542.6 | 155.3 |
9.1 | 7.5 | 3.4 | 321 | 162.8 | 309.1 | 221.6 | 110.8 | 368.8 | 206.3 | 137.5 | 340.2 |
7.5 | 12 | 6.9 | 158.2 | 458.5 | 250.7 | 110.8 | 428 | 202.3 | 84.1 | 397.4 | 184.4 |
17.1 | 10 | 4.25 | 687.8 | 428 | 274.1 | 833.1 | 252 | 336.5 | 810.2 | 229.2 | 319 |
16.4 | 16 | 7.8 | 611.5 | 596.2 | 209.3 | 739.1 | 704.7 | 139.6 | 764.3 | 695.5 | 144.5 |
11.5 | 14.8 | 5.1 | 489.2 | 535 | 266.6 | 395.9 | 614.5 | 289.1 | 374.5 | 596.2 | 273.2 |
From the above figures it is clear that ANFIS give accurate arm movements, i.e., by ANFIS training membership functions are modified.
Blade angles were calculated and the values were compared with the theoretical value as shown in Figure 17.
The variation between the actual and obtained angle is shown in Figure 18. The maximum error obtained was 32% and the minimum error obtained was 6.4%. So the error range of the blade rotation is between 6.4-32%. The error in blade rotation was due to the joint inefficiency. The confidence interval limit of the percentage error was calculated for 95 % confidence level and the range of the error was analyzed for better performance. It was found that most of the blade rotations were between the limits.
It is clear that the percentage error is coming within the upper and lower limit of 23.5% and 5.2% respectively. By calculating the equivalent joint angle rotation to reach a particular position and corresponding blade angle rotation the cake was cut.
The cut cakes were weighed as shown in Figure 19 and the weight of the cakes were compared with the theoretical weight.
The error in the obtained weight was due to the inefficiency of joints, improper blade for cutting and also error in the joint angles. Good results can be obtained by improving the errors in the hardware and motor efficiency.
9. Conclusions
Vision-based 4 DOF Cartesian robot for soft material cutting was maintained, implemented and tested for cake cutting operation. Comparison of fuzzy logic and ANFIS approach was done and it was found that by ANFIS simulation accurate arm movements was obtained. The intelligence was successfully imparted to the robot but the problem with the hardware and inefficiency in the joints resulted in errors. During the implementation, percentage error obtained in the blade rotation is in the range between 5.2 to 23.5%. Error obtained is minimal so cutting robot can be improved by means of error correction in the software and hardware with a good processor and other subsystems. The Work can be extended in different ways by using better image processing algorithms, other soft computing or hybrid techniques and stereo vision. Intelligence can also be added for adapting the changes in the system for précised cutting. Sensor technology can be improvised in addition to image processing to cut the material more intelligently based on the hardness of the material.