The pump also has a 3.3 liter/minute vacuum rate which is plenty tomake up for losses at the vacuum cup / ball interface. I have had some problems with the 12 volts causing the relay to get stuck in the on position, or the board not being strongenough to power a relay switch capable of activation the vacuum battery.The arm is fully capable of lifting pool balls with ease, and battery life is noproblem for the robot to retrieve all the balls. It was somewhat harder than I originallythought to get the arm and the wheels moving like I wanted, but lots of geometry and trialand error finally got them both working well.All the arm servos pretty much move the same for a given change in the PWMsignal. They may have different starting or ending pints, but they all move one degree forevery 10 micro second change in PWM signal. This was found by giving the servos asequence of PWM signals that varied by .1 milliseconds, and measuring the angle at eachpoint. The change was completely linear as can be see in the graph below.HS-5645MG2500y = 9.7157x + 501.3820001500Series1Linear (Series1)10005000 0 50 100 150 200 PWMFigure 2 SensorsIRThere are four Sharp IR sensors on the robot, one on the front, one on therear, and two on the left side. The two on the left side have a closer operating range thanthe two on the front and the back. This was done since the robot is designed to keep itsleft side against the wall (a short distance), while the front and rear IR are required torecord a much longer range.The front IR sensor has the job of telling the robot the distance to the upcomingwall, while the rear sensor has the job of the telling the robot how far it is has traveledsince the previous pocket. One IR sensor might be able to do this alone since thedimensions of a pool table are known, but not all pool tables are the same dimensions,and having two IR sensors gives the robot away to check itself. These distances will beused to determine the speed of the wheels, and to tell the robot when to begin a turn.The two IR sensors on the left side of the robot will take distance readings at thefront and rear of the robots side. These measurements will be used to keep the robotalongside the wall to its left while it moves between pockets, and to help the robot alignitself to its left wall when completing a turn. The rear side IR sensor will also tell therobot when it is in position at the next pocket since its distance reading will besignificantly higher than that of the front side IR.One Problem with the IR sensors is that they work differently under differentlighting conditions, and the two different IR sensors work differently as well. This canall be seen in the following table of analog to digital readings at different distances in twodifferent lighting conditions, with the two sensors. Dist Dark Ambient Dist Dark Ambient (in) Long Long (in) Short Short 2 75 95 2 158 158 4681012141618202224 11113212110988725444313131 11712811710692837365595451 345678910121416 144119998575655953454035 147120998473656054454034 inf 31 34 Figure 3Therefore the robot will, at startup, take a reading from the side and rear IRsensors, while the robot is positioned in a corner of the table (so the distances will beknown). It will use this reading to calibrate the sensors for the rest of its operation. GP2Y0A21YK(short distance) GP2Y0A02YK(long distance) Figure 4BumpPositioned at the end of the robots arm will be a specialized bump sensorarray. The original design had this bump sensor being radial in nature, with fourseparate bump sensors, and has 12 protruding rods (three rods to a sensor). The twelverods would hang down from the sensor in a circle evenly spaced. The sensor would thenbe moved slowly closer to the pocket. As the rods come in contact with a ball they wouldbe moved upward, which would cause them to break their inpidual leg of their circuit,causing that bump circuit to change its voltage reading. Logic within the robot would have determined where the ball is based on which rods hit and known distances to therods.Figure 5However, this setup never worked right, because all twelve rods would nevermaintain good contact with their contact points when then were not touching a ball.Many different solutions were tried, but nothing ever worked right. I still think this orsome version of it is the best idea, but I didn’t not have the materials or the time to get thematerials to do this better. In the end what was done, was a small bump sensor wasplaced on the bracket at the top of the vacuum cup assembly. This way, when theassembly hits a ball and moves down its own spring, the bump switch comes out ofcontact. This enables the root to know at that it has reached the ball and that it shouldstop moving down. This does not however allow the arm to find the ball if it is offcenter.There are also two simple bump sensors at the rear of the robot. These will let therobot know if it has reached a wall when backing up. Figure 5 below shows the bumpsensors on the robot, and how their circuits work.Figure 6 LightTo determine the color of the balls, cadmium sulfide cells (CDS cells) arepaired in tandem with light emitting diodes (LEDs). The CDS cell changes resistance inresponse to the amount of light it sees, and the LEDs will be this light source. Dependingon the color of the ball, and the frequency of light from the LED, different intensities oflight will be reflected back towards the CDS cell from the ball. This will allow the robotto determine the color of the balls. Below is a table of tested values using LEDs thatproduce seven different colors.Figure 7Many different resisters were tried in the circuit until ones that gave the mostspread in the readings without introducing too much noise were found. The resisters withthe LEDs were 97 ohms, while the resisters with the CDS cells were 4.7K ohms.It is necessary to keep out ambient light, so location does not affect the readingsfrom the CDS cells. Therefore, the ball is transferred to a sensing chamber by the armafter retrieval from a pocket. The chamber will house 5 CDS/LED sensors, there will be four around the sides of the ball, and one underneath it. This chamber will allow half ofthe ball to be investigated by the sensors, while the other half protrudes above thechamber blocking light from coming in. The robot has been programmed to cyclethrough all seven colors of the LEDs and take readings for each. Then every ball has aset of 2 to 4 logical parameter that set it aside from the other balls for certain colors. Theballs will also be identified as stripes or solids based on how many similar reading theyget from the five sensors. Three or more matches means it is a solid.These LEDs have three pins on them, one for power, one for ground, and one thatswitches it to the next color. 论文风 饲草机英文文献和中文翻译(2):http://www.youerw.com/fanyi/lunwen_52577.html