IMPLEMENTATION OF ARTIFICIAL NEURAL NETWORK TO ACHIEVE SPEED CONTROL AND POWER SAVING OF A BELT CONVEYOR SYSTEM

Belt conveyors become very widely used in handling materials along short and medium conveying distances because their ability to transport is very effective if compared to the other transportation methods [1]. The handling of materials represents an important sector in the industry, where it consumes a considerable proportion of the overall power supply. In South Africa, for example, material handling consumes 10 % of the overall power supply [2]. So it is very significant to enhance the energy efficiency of belt conveyors in order to maximize energy consumption and for sure the cost of energy used in the material handling process. By focusing on the enhancement of energy efficiency, the conveyor belt technology will be concretely developed [3]. The belt conveyor represents a good example of the conversion of energy from electrical to mechanical type. The belt conveyor is responsible for fifty to seventy percent of the total consumption of electricity, so it is very important to decrease this huge amount of consumption in miscellaneous ways like depending on artificial intelligence as in this study. The efficiency of energy could be in four kinds, which are: performance, operation, equipment and technology efficiency. Both of operation and equipment efficiencies can be improved in most systems including belt conveyors. The performance efficiency depends on the operation and equipment efficiencies, where the performance efficiency is reflected by many external indicators like the consumption and cost of energy [4]. Many studies are interested in power saving issues, especially that concerned with conveyor belts. These studies have taken miscellaneous directions as will be shown next.


Introduction
Belt conveyors become very widely used in handling materials along short and medium conveying distances because their ability to transport is very effective if compared to the other transportation methods [1]. The handling of materials represents an important sector in the industry, where it consumes a considerable proportion of the overall power supply. In South Africa, for example, material handling consumes 10 % of the overall power supply [2]. So it is very significant to enhance the energy efficiency of belt conveyors in order to maximize energy consumption and for sure the cost of energy used in the material handling process. By focusing on the enhancement of energy efficiency, the conveyor belt technology will be concretely developed [3].
The belt conveyor represents a good example of the conversion of energy from electrical to mechanical type. The belt conveyor is responsible for fifty to seventy percent of the total consumption of electricity, so it is very important to decrease this huge amount of consumption in miscellaneous ways like depending on artificial intelligence as in this study. The efficiency of energy could be in four kinds, which are: performance, operation, equipment and technology efficiency. Both of operation and equipment efficiencies can be improved in most systems including belt conveyors. The performance efficiency depends on the operation and equipment efficiencies, where the performance efficiency is reflected by many external indicators like the consumption and cost of energy [4].
Many studies are interested in power saving issues, especially that concerned with conveyor belts. These studies have taken miscellaneous directions as will be shown next.

Literature review and problem statement
The papers [5][6][7][8] presented a method to coordinate the operating status of belt conveyor systems, by this method the cost was saved but not energy where the work is just shifted in time. The target is to control the speed of the belt conveyor to keep the high material amount constant along the conveyor belt.
The paper [9] presented theoretical models, which were developed for the estimation of energy in the belt conveyor. Many parameters were taken into consideration, good results were gained but the disturbances from the feeding rate were not considered in the proposed model.
The paper [10] investigated the variable speed drive (VSD) of belt conveyors, which is concentrated on individual belt conveyors or the lower controlling loops. It didn't deal with the constraints of the system and the other external constraints like the time of using besides to not coordinating multiple components on the belt conveyor system.
The paper [11] presented the main idea of controlling the speed to achieve energy saving in belt conveyors, where the Fuzzy Logic Controlling (FLC) was the controller. The energy was saved well, but the Fuzzy Logic Controlling is known for its vagueness and doesn't have the ability to be learned.
The learning behavior is adopted by the ANN Artificial Neural Network, which is used in [12], where the conveyor belt running speed is controlled through ANN depending on rubber quality and conveyor belt position [13].
In this study, also the ANN is used in controlling the motor speed of the conveyor belt to enhance the consumption of electrical energy, depending on the real need to operate the motor in its full capacity or not according to the presence and number of objects on the moving belt.
Recently, orientation appeared to reduce energy cost and consumption in different domains. The belt conveyor systems were one of these domains in the circle of interest to achieve power saving. Many methods were suggested by researchers. Most studies took into consideration the rate of feed and the speed of the belt conveyor as they are effective factors of operation efficiency [5]. In [6-8], a method is proposed to coordinate the operating status of belt conveyor systems, by this method the cost was saved but not energy where the work is just shifted in time. The target is to control the speed of the belt conveyor to keep high material amount constant along the conveyor belt. In [9], theoretical models were developed for the estimation of energy in the belt conveyor. Many parameters were taken into consideration, good results were gained but the disturbances from the feeding rate were not considered in the proposed model. [10] investigated the variable speed drive (VSD) of belt conveyors, which is concentrated on individual belt conveyors or the lower controlling loops. It didn't deal with the constraints of the system and the other external constraints like the time of using besides to not coordinating multiple components on the belt conveyor system. Controlling the speed to achieve the energy saving in belt conveyors was the main idea presented by [11] where the FLC was the controller. The energy was saved well, but the Fuzzy Controlling is known by its vagueness and doesn't have the ability to be learned. In [12], the effect of the movement velocity of sintering trolleys of a conveyor belt on the efficiency of the conveyor belt has been studied. It has been discovered that the movement speed of the sintering conveyor belts depends on the flow of the raw pellets of the conveyor assembly system, this affects the height of the pellet layer and contributes to an improvement in the productivity of the conveyer belt machine. In [13], the conveyor belt running speed is controlled through ANN depending on the rubber's quality and the conveyor belt's position.

The aim and objectives of the study
The aim of this study is to develop the speed controlling of the conveyor belt motor based on the Artificial Neural Network (ANN) in order to minimize the consumption of energy in the conveyor belt system.
To achieve this aim, the following objectives are accomplished: -objects on the conveyor belt will be recognized using the camera, then image processing will deliver the number and positions of these objects; -the speed controlling operation will be achieved using ANN as follows: the speed of the belt conveyor will be set at the full speed when the belt conveyor is fully loaded by objects according to a predefined limit, the system will be stopped when no objects were recognized on the belt conveyor, the speed will be adjusted accordingly when the belt conveyor is partially loaded.

1. Investigated Belt Conveyor System
The presented belt conveyor system is the LabVolt belt conveyor 5118, which is shown in Fig. 1. It represents an accessory part of the educational LabVolt 5150 robotic system, which is intended for studies and researches. This conveyor belt has a length of 1,880 mm and a width of 127 mm, and a net weight of 8.4 kg.
The belt conveyor could be operated either using the switches that are presented on the device control panel, or using the control signals that are provided by the TTL (Transistor-Transistor Logic) outputs that are located on the accompanying robot's base. The robot and conveyor system could be programmed by ROBOCIM. The belt conveyor has four operating parameters it can be controlled with, which are: Motor (to control the motor power), Clock (for the stepper motor clock signal), Direction (of the belt) and Speed (of the belt motor). These parameters could be controlled externally by signals through the TTL outputs of the belt conveyor, which is shown in Fig. 2. And the controller parameters are clarified in Table 1.
In this work, there will be four suggested types of motor speed (0 %, 25 %, 50 % and 100 %), where the choice among them in each case (of existence of parts) will be according to the ANN optimum decision, as will be described later.

Fig. 1. LabVolt 5118 conveyor belt
In order to activate a specific class from the proposed four classes, a certain value for the four bits must be achieved as follows, where each bit is triggered by neural network output, and went to the TTL controller of the robotic arm and then to the TTL of the belt conveyor as shown in Table 2.
In fact, there is a possibility to have till 16 classes in case of considering more gradation in motor speed values, for example (0 %, 5 %, 10 %, 15 %, 20 %…100 %). The ARDUINO Mega 2560 is used to connect the MATLAB programming with the conveyor belt as shown in Fig. 3. Another way to express briefly the plan of this study is the flow chart shown in Fig. 4, which illustrates the considered layout to achieve the purpose of this study. It shows simply the relation between the presence of objects on the conveyor belt and the desired implementation speed of the conveyor belt motor.
In Fig. 4, the flow chart of this work will pass by the following steps: 1. Initializing the laboratory system of industrial robot and its conveyor belt accessory and resetting to home position.
2. Then we check if the system is in the predefined start position, if yes we will continue to step 3, if the system is not at the start position yet we return to step 1.
3. The industrial robot must be stopped as an initialization for the start of conveyor belt movement.
4. Starting the movement of the conveyor belt. 5. Ensuring from the camera's work, only if it works, go to step 6. 6. Detection of objects' presence on the conveyor belt, if no objects were detected, the conveyor belt must be stopped, which means output speed will be 0 % to minimize the energy consumption.
7. If the conveyor belt is partially loaded with objects, where the minimum load of objects is detected (about 20 gram), the output speed will be average 50 % of the maximum motor speed.
8. If the conveyor belt is marginally loaded with objects, where the minimum load of objects is detected (10-15 gram), the output speed will be low 25 % of the maximum motor speed.
9. Finally, and after controlling the motor speed of the conveyor belt, the other procedures of transporting objects can take place by means of the robotic gripper. Table 2 Four classes of bits

Class Number
Percentage of Speed Bits from 0 to 3  1  0  0000  2  25  1000  3  50  0100  4 100 0010 But, the idioms "Partially, Marginally or None Loaded" will be interpreted later in the training algorithm and learning samples of the Neural Network section of this study.

2. Image Processing and Objects Detection
It is proposed that two types of products with different weights are transmitted by the conveyor belt. A vision sensor, which is ELMO model TT-12i (its output resolution reaches 1,080 pixels and its maximum capture area is 16.5×13.1"), is placed above the conveyer belt as shown in Fig. 5 in a pre-defined location. This location is chosen according to the fact that it covers the most important area of the conveyor belt. From this viewpoint, it is possible to have a good decision about the conveyor belt status, whether it is empty, half loaded, percentage loading, or fully loaded. The objects will be supposed to three types according to the weight, where the predefined shape of the objects leads to knowing its weight. Suppose that the object with wider dimensions has more weight. Thus, two things will be noticed by the view taken with cameras, the number of objects in the zone and the weight of objects in that zone.

3. Proposed Artificial Neural Network
The Neural Network in its arithmetic model is inspired by neural biological networks. A network consists of a series of interconnected neurons, and information is progressed using a connectionist approach for computation [13].
In this study, ANN is presented to be used as an advanced modern control technology and theory in controlling the speed of the conveyor belt motion to enhance the energy consumption, increase the life span of the conveyor belt, decrease the need for maintenance, and minimize cost effort besides. The running speed of the conveyor belt would be according to the number and weight of objects that are above the conveyor belt. The speed hug needs to be adjusted to the objects number and weights. The new value of motor speed would be fed back each type to update the conveyor belt speed status. In order to design the neural network.
Firstly, the data must be collected (data have been represented by the fifteen cases of study, which will be clarified later). Then creating and configuring the neural network. After that, initializing weights and biases.
Finally, training, validating and using the neural network. The backpropagation (Artificial Neural Network) BP (ANN) is one of the most important and widely used networks. It is a forward multilayer network, capable to approximate the nonlinear arbitrary function, where the learning algorithm besides structure is so clear and simple [14]. The training data is considered as the largest collection that is used by the neural network by modifying the network weights to learn the pattern presented in the data. Testing information is used to assess the consistency of the network.
The ability of learning and adaptation in the BP NN will lead to finding the optimal speed control of the conveyer belt motor [15]. Below is Fig. 6, which shows the model structure of the three layers backpropagation neural network, it includes input, hidden and output layer.
On Fig. 6 x s -the inputs; Y -the output; b -the bias; X 1 -considered to be the number of 20 gram objects; X 2considered to be the number of 15 gram objects; X 3 -considered to be the number of 5 gram objects.
On the other side, Y is the percentage of motor speed, W -the weight, b -the bias, the number of layers is two and the number of neurons is 10.

Theoretical Analysis of the Study
In our study, two network inputs are used, which are the number of objects and their weights, while the network output would be the percentage of the speed of the conveyor belt motor. So a MISO (Multi Input Single Output) system is considered, while the number of hidden layers would be chosen not to be too small, which would not be able to establish a complex relationship and the NN would not be trained successfully. Also, the number of hidden layers must not be too much, which makes the learning process too long, and the minimum error would not be achieved [16]. The NN will be trained till reaching the optimum result.
The first step will be the network initialization, where initial random values will be given for weights' and nodes' thresholds. Then, the training input samples of X s will be delivered to the neural network, and the corresponding output values for the input sample value will be T s . According to the backpropagation NN algorithm, there will be a comparison between the actual output value Y s and the target output value T s . There will be a percentage of error, which is desired to be minimized.
The error will be fed back to the network in order to modify the node threshold and so on till reaching the minimum difference between the actual Y and desired T outputs. The total error function: where E -total error function; T -target output value; Y -actual output; i=1, 2...n, where n=3. 1 1 1 2 2 3 3 1 = + + + , H XW X W X W b (2) where H -hidden layer; X -training input value; W -weight; b -bias.
This error will be back propagated to modify the network backward parameters to update weights. If we consider W 9 : 9 9 Error at = , where ∂ -partial differential equation, where ŋ -learning rate and it equals here 0.5. In the same way: W 10 In the same way, W 2 , W 3 , W 4 , W 5 , W 6 , W 7 , W 8 .

5. Experimental Conditions of the Study
According to the top view taken by the camera for the first part of the conveyor belt, some data are obtained by experiments in order to be the base to determine later the best output values for the new input values. Table 3 gives the best training samples that were obtained by practical observations, and they would be delivered to the neural network (NN). NN will be trained according to these data. Then the output values will be gained for any unpredefined inputs. As mentioned before, the number of categories of the output, which is the motor speed percentage (of the maximum ability of motor speed) will be four (0 %, 25 %, 50 %, 100 %). The training process would be done using the neural network toolbox in the MATLAB program, which provides command line functions, in addition to the simple applications for creating, simulating and training [17,18].
The size of training consistency was chosen as 70 %, the size of verification consistency was 20 % and the size of testing consistency was 10 %.
In addition, the network type was selected to be feed-forward backpropagation, the training function was TRAIN-LM, the adaptation learning function was LEARNGDM, the performance function was the MSE mean square error, while the transfer function was Tan sigmoid.

1. Results of Objects' Recognition and Image Processing
The processing of images will pass by the following procedures: Firstly, the red green blue (RGB) frame would be acquired from the real-time video. Then the red layered MA-TRIX would be extracted from the RGB frame. The gray image would be gained from the RGB image frame, where this gray image frame would be subtracted from the red image frame. After median filtering the noises, the difference would be converted to binary one by using the threshold value.
Image processing procedures are shown in Fig. 7 below.
In the next step, the centroid of each detected object on the conveyor belt will be calculated and appeared in the processed image as shown in Fig. 8 below.
By the end of the image processing step, the red parts on the conveyor belt have to be detected, recognized by the type of weight, known in number, and centroids have to be located too as shown in Fig. 8. Fig. 9 shows the GUI (graphical user interface) of the presented neural network in the NN toolbox of MATLAB, where epochs were taken as 15,000 and the validation checks as 1,000.

2. Results of Controlling Belt Speed and Power Consumption
At the first stage of the BP NN, the learning process is done according to the training samples and modifying the learning rule by updating weights between node and threshold. The used samples were chosen of the best observed experiments, which achieve ideal relations between the number, weight of objects and desired speed. The error will be minimized to suit the requirement of the percentage speed of the conveyor belt according to the previous mentioned inputs.
In the second stage, which is the most important stage where the actual work takes place, the effectiveness of the BP NN is determined. The number of training samples will influence the effect of this stage.
Some disturbances due to external environment may lead to fluctuations in the actual work, then an unstable output may occur.
In order to enhance the neural network performance, it is preferred to increase the learning samples or to optimize them.
Firstly, the weights' values of the neural network are selected randomly, then these weights are preferred to be in convergent values after updating to ensure achieving the neural learning in a short time. The following values of weights and biases for each layer were obtained by the proposed neural network.
W{1, 1} weights to layer 1 from input 1: By using the neural network toolbox in MATLAB software, we got the behavior of the created neural network in Fig. 10-12, where the network training performance, regression and state are clarified as below. Fig. 10, 11 show that an acceptable training performance was obtained. The training went well when considering the mean squared error along the epochs, where the error is decreased as the number of epochs increased.
This performance may be enhanced either by changing the functions of adaptation, training, transfer, learning and performance or by changing the neural network type and layers number. Besides increasing the training data till reaching the best performance.
On the other side, it is clear from Fig. 12 that very good convergence was obtained between the targets and outputs in this neural network training.
It is important to mention the relation between the speed and the consumed energy, shown in Fig. 13, which is drawn by using Microsoft Excel below, in order to calculate the amount of the saved power in each case of NN simulation results. In Table 4, miscellaneous cases of objects with different weights and shapes were put on the conveyor belt and the proposed ANN is used to expect the output percentage of speed.

Discussion of experimental results
Firstly, the image processing stage delivers good results, where all the objects in various loads and shapes are recognized on the conveyor belt as in Fig. 7, 8. At the end of this stage, each of the type, number and location of objects were obtained.
In fact, successful image processing leads to the right input data to the neural network, which guarantees the good behavior of the network.
Secondly, the proposed ANN offers a simple, flexible, efficient and economic method, besides its ability to be learned, improved and enhanced especially when compared with other controlling methods. By using this artificial intelligence method, the electrical power consumption reaches in some cases 0 %, which means that the saved energy in these cases is 100 % as shown in Table 4, in relation to the classical case where the belt motor is running in its full capacity along all the operating time.
The results explain the good behavior of the proposed artificial neural network in dealing with controlling the motor speed of the conveyor belt in a way that achieves the minimum consumption of electrical energy in addition to extending the system life as a result of decreasing the operating time.
Very good results were obtained where if we compare some of the important results obtained in this study and the results were obtained in [19]. We found that the MSE (Mean Squared Error) that had been gained by the backpropagation neural network had reached 0.037565 on average, while in this study, the average error reached 0.027361.
Also, the average saved percentage of error in the last reference had reached 24.277 %, while in this study, the average saved percentage of error is 55.93 %.
Some limitations were found, like the need for experience in image processing and illimnation handeling till reaching the desired information. In addition, it is required to have a sufficient number of data samples to get acceptable results.
The disadvantage of this study was faced because of the studied conveyor belt, which deals with certain values of speed only, as a result of the limited 4 TTL signal. This can be overcome by using another type of conveyor belt to permit any value of motor speed.
As a development of this research, it is possible to add other operations to the system, such as sorting between pieces, grouping, or others, the matter that demands using other vision sensors, besides considering time synchronization between operations. Also, another step to enhance this study is to change the image processing algorithm in order not to depend on objects' colors and number only, but on shapes and depths also, where a side camera has to be added.

Conclusions
1. In the presented work, an intelligent energy-efficient belt conveyor system for object detection, identification and transportation with the aid of the robotic arm is proposed. The presented system effectively identified the objects on the conveyor belt using the approach of color sensing to determine the number, shapes, types and weights of these objects. In the end of the image processing operation, the number of objects, in addition to their exact locations, was determined as in Fig. 7. 2. The conveyor belt is considered to be fully loaded when it is loaded by at least (summation of weight equals 40 g) either 2(20 g) parts, or 8(5 g) parts, or [2(15 g) and 2(5 g)] parts and so on.
The motor speed will be 100 % in this case, as in cases 1, 2, 3 and 7 in Table 4. Here no energy was saved.
While the motor speed will be zero % and the belt's movement will be stopped when no objects were detected by image processing of the belt's top view as in case number 10 in Table 4. It is the best case for energy saving, which is 100 %.
The conveyor belt is considered to be partially loaded when it is loaded by at least (summation of weight equals 20 g) either 1(20 g) part, or 4(5 g) parts and so on. The mo-tor speed will be 50 % of its maximum speed in this case, as in cases 4, 5 and 6 in Table 4. The saved energy here is about 87.5 %, which is a good percentage.
The motor speed of the conveyor belt will be adjusted to 25 % when the least amount of weight is detected, which, in other words, is proposed to be in the range of (10 to 15 g) either 1(15 g) part, or 3(5 g) parts, and so on as in cases 8 and 9 in Table 4. The saved energy here is about 98.4 %, which is a very good percentage.