OUXT-Polaris Catamaran Robot “Polaris -I” for Maritime RobotX Challenge 2014 Team: OUXT-Polaris (Osaka-Japan) Advisor: Kazuhiko Hasegawa Naoya Fujimoto, Suisei Wada, Jyotsna Pandey, Kentaro Tanaka, Kyoichi Takayama, Tatsuhiko Kono, Tatsuya Sanada, Yoshiyuki Haradai aGraduate School of Engineering, Osaka University,2-1 Yamadaoka, Suita, Osaka, JAPAN (E-mail: [email protected]) 1. Abstract search under water sound. Difference of loudness or time of obtaining sound leads The Catamaran robot Polaris I designed by the position. These programs are controlled Osaka university team is on the purpose of by two note computers with the help of C++ achievement of AUVSI Foundation ROBOTX program. Obtained task data is saved on competition (Fig 1). The first competition of board computers and send to directors “Maritime RobotX Challenge” is going to be through Wi-Fi network. One kill switch with held in Singapore 2014. Our activity has power indicator on the board and one started from making motor system, remote kill switch prevent runaway by composed by couple of motors, motor cutting off the power supply to motors. drivers and 12V batteries. Then various sensors are prepared and tested on the sea twice a month. Apart from that two Laser- Range-Finders, one satellite compass, four microphones, one omnidirectional camera and one web camera are selected as sensors. Satellite compass detect its own position. Laser-Range-Finders detect obstacles. These two is fundamental equipment to know its own position and obstacle position. Omnidirectional camera Fig. 1: OUXT-Polaris designed “Polaris -I” checks the colors, shape and size to 2. Introduction recognize whether they are buoys, marks or not. Web camera analyze color of LED light Nowadays ships, aircrafts and AUV’s are buoy and recognize the order of colors, this autonomously guided and navigated but is different algorithm from omnidirectional furthermore intelligent decision making camera’s one. Microphones are used to OUXT-Polaris Page 1 of 14 OUXT-Polaris capacities should be incorporated in order omnidirectional camera, and one USB Web- to improve autonomous ocean navigational camera. Third, we use four microphones to facilities. In future it is required to more detect under water sound, and one satellite emphasize on this kind of research activities compass to get location information. to realize autonomous maneuvering of Another 12V battery supply electric power ships or marine robots. It may highlight for those sensors. And they are controlled many more areas of course tragic accidents one note PC through Ethernet or USB. can be decreased. In our lab, Ahmed et al. Summarized information can be send to (Nov., 2013) studied autonomous berthing directors through antenna with Wi-Fi. This by using Neural Network[1], and some antenna can communicate about 200m successful experiments using ship scale while keeping Singapore and Japanese radio down model in Osaka University pond was law. conducted[2]. We have gone through with 3.2 Technical Description of the Boat many good control theorems [3]. First challenge is to make original motor The cost of ship and variety of elements of drivers, fixtures to attach motors and engineering techniques seems to make it knowing the behavior of the boat. We difficult to research or do experiments. Now prepared 55 lbs electric hand control Catamaran boat called “WAM-V” is motors which are used for mini boat which provided by organizers and all tasks are weight is about 200kg - 250kg to fishing in described well. Ultimate goal is to general. It is attached behind the boat, and contribute for future research by power and direction can be change by hand. developing an autonomously maneuver We made motor drivers to match the time ships and marine robots and of course to when our boat arrives and to do experiment win this competition successfully. At this as soon as possible. This idea is right, since first competition, we selected simple way our motor drivers burned twice. First we and simple algorithms in order to keep fix don’t know why, second time we find the deadlines and to learn what we need for reason by feeling burning smell. It works future challenge. well on the ground. But there is strong resistance in the sea and electric current 3. Technical Approach are there as we expected. We decided to 3.1 Mechanical and Electronic Systems make robust motor drivers as not break if 100A current flow. After 2 month from 2nd In this section mechanical and electronics experiment, it is completed. While making systems on the boat is described. First in motor drivers we made fixtures to attach order to run the boat, we use a couple of motors behind of the hull by aluminum motors, motor drivers, 12V batteries. flame fixtures as shown in fig. 2. These Second, in order to find buoys and wall, we fixtures are installed as it strongly holds the use two Laser-Range-Finders, one OUXT-Polaris Page 2 of 14 OUXT-Polaris metal flame of the hull; it can’t be detached At experiment, we controlled the motor by easily. The wooden frame is used to avoid controller and check the movement of the the slipping of the motors. After that we boat. It went straight about 1.33m/s when made connection between motor and both motor’s output is full power. Speed of motor driver, the motor drivers control the back space was almost 1.28m/s in full motor power according to the command power because of the effect the resistance from PC through Ethernet. This system can of fixtures and it also turned in a circular change motors power 511 level. Max 55 lbs. motion by changing the output of each to 0 (No power) are separated to 256 level, motor, instead of general ships change with and inverse rotation is separated to 255 the help of rudder. The boat has one very level until -55 lbs. We can change its power important and unusual movement, it can freely by game controller, directly inputting turn at that point by outputting one motor value, pushing shortcut order as stop or go ahead and another reverse. This turning. (Fig. 3) movement seems to make it possible to run as a tank though there is also a weak point. This boat is easily flowed by wave. We conducted this experiment at Kobe University experiment pond which is also surrounded by the land as Singapore Marina bay. Side slipping of the boat was very difficult to control. As one idea to solve this problem, we thought to put four motors as omnidirectional robots as Pliveira et al. (May, 2008) studied [4]. The idea is to Fig. 2: motor and fixture put four motors; each hull has two motors at front and back, facing the tangential direction to the center of gravity. By adjusting the output of four motors, we can control the boat in multiple directions. For example, two motors on the same hull outputs to same direction; it can move side- way. If we can install this theory, side slipping can be reduced. We prepared four motors and motor drivers but we can’t adjust programs to control the boat by four motors due to the shortage of time. As the relic of this idea, we experienced in the condition that two motors facing tangential Fig. 3: motor control through PC OUXT-Polaris Page 3 of 14 OUXT-Polaris direction (Fig. 4) which makes the speed of away the boat and change direction turning very fast, at the expense of the randomly by remote control. Then start the speed to go ahead and back. The increase program and check whether it will go to the of the turning speed is useful in strong wave point correctly. The experiment succeeds. condition or when we need precise This autonomous maneuvering is working in movement. We will decide whether to use simple algorithm as represented by Flow the direction or not by watching the sea chart of the algorithm in fig. 6. This is the and field condition at the venue. basic algorithm of autonomous maneuvering for almost all tasks. Fig. 4: a motor facing tangential direction to the center of gravity 3.3 Self-location and Control Fig. 5: SC-30 installed on the board The SC-30 Satellite Compass provides highly At first, decision of the goal point is accurate attitude information to our PC important, it may be berthing point, space through CAN bus. It provides GPS position between GATES buoys or side of buoys to in 3m accuracy and heading position in 0.1 avoid obstacles. GPS point or relative degree accuracy for each one second. This position from the target will be selected satellite compass correct by using two and decide how distance it needs to close. antennas installed in it. We use this position After that checked the heading to evaluate information for communicating about the how angle differ from direction. If it is tasks, to know the position of ships and to bigger than +- 5 degrees, turn at that point predict the position of buoys. We did and change direction. If the difference autonomous maneuvering experiment by between heading and direction becomes using this. We installed it on the board less than 5 degrees, it will go ahead straightly as shown Fig. 4. First, point a GPS adjusting its heading. position latitude and longitude. Next, move OUXT-Polaris Page 4 of 14 OUXT-Polaris Laser-Range-Finder, UTM-30LX-EX (Fig. 7) is presented from HOKUYO. This will scan semicircular area of horizontal plane, 30m radius and 270 degrees; by laser beam (λ is 905nm). Its step angle is 0.25 degrees. Then, it can analyze the distance and angle to targets. Each scan can be done in 25ms. In our research, it can work when the target or anybody is moving smoothly. It does not recognized water as an object, as long as it is become dirty or shallow. This will also be useful in the sea condition. But we found that pitch of the boat shake about 2.5 degrees in a strong wave condition. Its height can change 1.3m at 30m distance. So we prepared a stabilizer to keep it parallel to the sea surface. This stabilizer is installed on the front arch and its height can be changed easily by tools as needed. This Fig. 6: algorithm of autonomous main Laser-Range-Finder will be used to maneuvering find GATE buoys, wall, A-7 and A-5 buoys. About float, A-2 and A-3 buoys, they are When the difference becomes bigger it tries very small to find by searching horizontal to adjust and stop to go ahead. When the line. If we fit the height to find them, there goal becomes closer than decided distance is high risk to the equipment get wet by sea it tries to stop and adjust additional terms if water. In order to detect small buoys, we needed. For example, it checks not to hit thought to shake the stabilizer up and down. the buoys or float. At last search next target Then Laser-Range Finder will search not and go to first. only horizontal direction but also height 3.4 Target Detecting direction as 3D scan system. In this competition, in order to overcome the For detecting buoys, float and marks, we problem we made a ramp stand by 3D are mainly using these two equipment as a printer (Fig. 8). It will be installed the front sensor. of the board. This allows us to find Laser-Range-Finder (UTM-30LX-EW) obstacles which enter adjusted radius. Omnidirectional Camera (VS-C450U- 200-TK) OUXT-Polaris Page 5 of 14 OUXT-Polaris Fig. 7: Laser-Range-Finder and stabilizer Fig. 9: omnidirectional camera Omnidirectional camera is used to scan the color around there. After colors are extracted, labeling processes is done. Basic theory for image processing is used [5]. First it checks its color whether it is used color or not in the task. Next, check its shape to judge it is really buoy. If it is different shape from buoy, then it is ignored. At Last, check its size, if it is too small, it may scrap or any Fig. 8: ramp stand for Laser-Range-Finder reflection. If it is too big, it may be fishing Omnidirectional camera (VS-C450U-200-TK) boat or something. Fig. 11 shows the has 1600 X 1200 resolutions and a bipolar example of detecting red buoy by this surface mirror on upper side, so it can program. First picture is original picture overlook all the directions. (Fig. 9) They are taken by omnidirectional camera. Second used to detect targets. When detecting picture is filtered by colors. Third picture is buoys, the algorithm is Flow chart of the filtered edge program. This can be used to algorithm (Fig. 10). Laser-Range-Finder is check shape. Last picture is checking size of used for detecting any object and to detected things. This standard of labeling calculate its direction. process is necessary to adjust by time, weather and place at the venue. In our experiment, brightness of the sky affects OUXT-Polaris Page 6 of 14 OUXT-Polaris the color the camera is taken into account (For example shiny day, In Fig. 11 reflection of sunlight is recognized green buoy by mistake.) Also, sometimes there are many reflections or scrap on the sea. After getting the information of buoys color, next it plans what it needs to do for each task. At task 1, setting the route which will through the GATE buoys, at task2 it needs to calculate the distance and guess the target buoy position, at task 4 it needs to close to observe LED buoys. More detailed information about task 4 is described in next section. For task 5, it needs to select right GATE by comparing colors of two buoys. Some colors like white are very difficult to find because of low pixel of Fig. 10: algorithm of detecting buoys omnidirectional camera. If we want to detect it, we need to stay as close as possible. Algorithm to detect marks is a little different from detecting buoys. These colors are only black, so it can reduce first process from previous one. In Fig. 12 Flow chart of the algorithm is shown. First expansion of the data of omnidirectional camera is done. Then labeling is done mainly black colors and checked its label’s Fig. 11: example of the program shape whether it is matched to the circle, If the matching ratio is sufficiently bigger triangle or cross. Especially about cross, we than the threshold it is recognized as the need to take sample in practice time mark. After finding target mark, the boat because it can change its form due to its will go to the mark straightly and stop its thickness. motor when it closes in 5m distance. If there is float beside the boat, it needs to adjust to prevent it from hitting. OUXT-Polaris Page 7 of 14 OUXT-Polaris Fig 13: an autonomous ship targeting LED Fig. 12: algorithm of detecting marks Light Buoy The buoy with vertical Led light bar is 3.5 LED Light Color Detection located on the search area and successively display color one at a time to generate a Thousands of ships and surface vehicles can sequential pattern of three colors (red, navigate through any sort of markers green and blue) individual color will appear (Lighthouses, light buoys etc.). In this paper for 500 millisecond after which the light researcher tried to explain the image remain off (black) for two seconds. The processing based algorithm to detect the camera records the video and with the help Light Buoy in the search area with help of of algorithm the sequential pattern of the camera placed on the autonomous surface color of LED light buoy can be detected ship (Fig. 13). In this research, light source online. In this research the pattern of buoy composed of high brightness LEDs is glowing LED light is already known to us. used, because LEDs have gain widespread Camera reads the image on 30 FPS so it is use in lightning application since LED lights not needed to process every image frame maintain more stable state and less power and process time is reduced. Image required also they have a good recognition acquisition toolbox and image processing properties in both day and night conditions. toolbox of MATLAB is used for the coding [9]. OUXT-Polaris Page 8 of 14 OUXT-Polaris The Flow chart of the algorithm is shown in preserve the original brightness of the Fig. 14. image. The cumulative histogram from the input image needs to be equalized to 255 by creating the new intensity value by applying equation 1[7]. 𝐼′ 𝑥 = 𝑑 × 𝐶 𝑥 −𝐼 +𝐼 (1) 𝑀𝑖𝑛 0 𝐶𝑀𝑎𝑥−𝐶𝑀𝑖𝑛 Where, is the new intensity level, d is the new dynamic range value, I is the offset 0 point of new dynamic range for I’(x), C(x) is the normalized cumulative value, C is the Max maximum value in normalized cumulative Fig 14: flow chart of the algorithm value, and C is the minimum value in Min First part of the algorithm is image normalized cumulative value. Lastly, the acquisition in which with the help of the normalized cumulative histogram is used as camera video is retrieve and read in the the mapping functions of the original image. algorithm with the help of Image There are many color images processing Acquisition toolbox in MATLAB. From the well established to remove both linear and video images are extracted frame by frame nonlinear noise from the image. In the field for further processing. Image clarity is very of image noise reduction several linear and much affected by environmental conditions nonlinear filtering methods have been for e.g. lightning and weather condition etc. proposed. In these kinds of image so in that cases image may loss some acquisition processes both linear and information. So Image enhancement is a nonlinear noises are presented. Most technique to recover the lost information common noises are impulsive and additive also makes it brighter and contrast. In this so we used median filter which is a algorithm Histogram Equalization [6] is used nonlinear filter. to make contrast adjustment using image’s The autonomous ship has its own roll, pitch histogram. Histogram Equalization and yaw sensors fixed with the body redistribute intensity distribution and coordinate frame which give the rate of produce optimal contrast but cannot adapt change of the angles. The information is fed the local information of the image and to the algorithm and according to that image is processed without any distortion. OUXT-Polaris Page 9 of 14 OUXT-Polaris Let us consider an image function f defined 𝑟 = 𝑅/(𝑅+𝐺 +𝐵); 𝑔 over a (w, z) coordinate system, undergoes = 𝐺/(𝑅+𝐺 +𝐵) & geometric distortion to produce an image g 𝑏 = 𝐵/(𝑅+𝐺 +𝐵) (4) defined over an (x,y) coordinate system[6] This transformation may be expressed as equation 2. 𝑟+𝑔+𝑏 = 1 (5) 𝑔 𝑥,𝑦 = 𝑇 𝑓 𝑤,𝑧 (2) After applying the algorithm on the video of LED light buoy captured by the camera the Where ‘T’ is a transformation matrix that following results are obtained fig.15. The contains Rotation, Translation and Scaling sequence of the color pattern is detected After that whole preprocessing normalized but the limitation is no color should repeat correlation based pattern matching just after the same color for example first technique is used as it allows for stable sequence pattern is obtained as [Red Green pattern matching without being affected by Blue]. Similarly second and third is [Red ambient light also normalize the image Green Red] and [Blue Green Red]. Image vector between the reference image and has been enhanced, noise free and free input image and calculate correlation from distortion. coefficient with the given equation.3 [6]. 𝑌 𝑢,𝑣 = 𝑥,𝑦 𝑓 𝑥,𝑦 −𝑓′ 𝑢,𝑣 𝑡 𝑥−𝑢,𝑦−𝑣 −𝑡′ 2 𝑥,𝑦 𝑓 𝑥,𝑦 −𝑓′𝑢,𝑣 𝑡 𝑥−𝑢,𝑦−𝑣 −𝑡′ 2 (3) Where t’ is the mean of a reference image, f’ (u,v) is the mean of f(x,y) in the region under the template. At last RGB color detection is method is used to detect the LED color change. Thresh holding value is set for Red, Green and Blue colors. In the proposed method, color image is analyzed from RGB color space point of view. Each pixel in the image consists of three color channels known as RGB components. The range of values of each of this components lies within 0 to 255. As it is known from the literature that we can normalize the formula [8] OUXT-Polaris Page 10 of 14
Description: