150 likes | 274 Views
“self-maneuvering miniature vehicle”. 2m. 2m. Finish. Start. 2m. 2m. What are we doing?. The same thing as everyone else Attempt to facilitate the navigation of a self-maneuvering miniature vehicle across an alternating curved black line on a linoleum-based surface. Parts List.
E N D
2m 2m Finish Start 2m 2m What are we doing? • The same thing as everyone else • Attempt to facilitate the navigation of a self-maneuvering miniature vehicle across an alternating curved black line on a linoleum-based surface
Parts List • Whatever came in the box….
How might this be accomplished? • Commence the operation by the construction of a self-maneuvering miniature vehicle with electromagnetic radiation detectors on the aft and starboard sides of the self-maneuvering miniature vehicle. STARBOARD AFT
Velocity Facilitators • Due to the necessity of forward momentum, our self-maneuvering miniature vehicle will require 2 Velocity Facilitators. They will hence forth be referred to as α and β.
Due to security reasons, the code for our self-maneuvering miniature vehicle is highly valuable and mustn't fall into the wrong hands. For this reason, or code is as follows, and please read without haste:
void main() • { • int flag=1; • printf("push to begin \n"); • while (start_button()==0){} • while(flag==1) • { • motor(1,30); //go straight • motor(3,30); //go straight • printf("straight \n"); • if (analog(3)>175) //if the right sensor is on the black line • { • if (analog(4)>165) //if the left sensor is also on the black line • { • printf("done"); • ao(); //stop • flag=0; • } • else{ • ao(); • while((analog(3)>175)& analog(4)<175)//while right sensor is on the line • { • printf("turning right \n"); • motor(3,100); //turn right • motor(1,-100); • } • } • } • else if((analog(4)>175)&analog(3)<175) //if left sensor is on the line • { • ao(); • while(analog(4)>175)//while left sensor is on the line • { • printf("turning left \n"); • motor(1,100); //turn left • motor(3,-100); • } • } • } • }
PHOTODIODE • As aforementioned, the maintenance of location in the vicinity of the black line will be facilitated by the use of electromagnetic radiation detectors. The value returned is almost inversely proportional to the amount of light the sensor is exposed to. The photodiode returns a high value when little light is present as more of the current returns. This is an open circuit…
DIVISION OF LABOR? • We feel division of labor is a preposterous concept and it should be abolished immediately. If one “alpha male” dominates the construction of our self-maneuvering miniature vehicle, how would the “inferiors” learn to build robots? We feel any group who had “builders”, “coders”, and “overseers” were going about things all wrong. Ok…Josh wrote the code, Patrick was in charge of robot construction with Maya’s aid. Bell also worked on code and was in charge of parts.
Challenges? • Challenges are for losers. We called them potholes on the road to success. They were all overcome by perseverance, ingenuity, and prayer. Oh and scotch tape. That is pivotal.
Oh…problems • Ok, well we did have one pothole on the road to success and that was the deficient ability of our self maneuvering miniature vehicle to cease forward momentum at the conclusion of the black tape path. This was solved by the addition of “& analog(4)<175” parameter in the code. This, in conjunction with manipulating the locality of the photodiodes rectified the pothole. On occasion, there was also an error in the direction of connectors for the velocity facilitators α and β.
Trapez and Trapez_fast • Trapez and Trapez_fast are functions created in MATLAB based on the Trapezoidal Rule to find the area under the curve of a function in the homework. • The difference between the two functions is Trapez_fast is faster than Trapez because it uses the MATLAB vector operation instead of arithmetic operations in Trapez.
MATLAB RESULTS • Trapez_fast: • N=5000, elapsed time= 0.000000 s • N=50000, elapsed time = 0.016000 s • Trapez: • N=5000, elapsed time= 0.062000 s • N=50000, e;asped time= 3.109000 s • Trapez_ fast was the faster function for n=5000 by 0.062000 seconds • Trapez_ fast was the faster function for n=50000 by 3.093000 seconds
The blue line is y=sin(x). • The red line is the integral of y. The red line represent the area under the curve of sin(x) as x progresses.
Results • s = • Columns 1 through 10 • 0 0.0020 0.0079 0.0177 0.0314 0.0489 0.0702 0.0952 0.1237 0.1557 • Columns 11 through 20 • 0.1910 0.2295 0.2710 0.3155 0.3626 0.4122 0.4642 0.5182 0.5742 0.6319 • Columns 21 through 30 • 0.6910 0.7513 0.8126 0.8747 0.9372 1.0000 1.0628 1.1253 1.1874 1.2487 • Columns 31 through 40 • 1.3090 1.3681 1.4257 1.4817 1.5358 1.5877 1.6374 1.6845 1.7289 1.7704 • Columns 41 through 50 • 1.8089 1.8442 1.8762 1.9047 1.9297 1.9509 1.9684 1.9821 1.9920 1.9979 • Columns 51 through 60 • 1.9998 1.9979 1.9919 1.9821 1.9684 1.9509 1.9296 1.9046 1.8761 1.8441 • Columns 61 through 70 • 1.8088 1.7703 1.7288 1.6843 1.6372 1.5876 1.5356 1.4815 1.4256 1.3679 • Columns 71 through 80 • 1.3088 1.2485 1.1872 1.1251 1.0626 0.9998 0.9370 0.8745 0.8125 0.7512 • Columns 81 through 90 • 0.6908 0.6317 0.5741 0.5181 0.4641 0.4121 0.3625 0.3154 0.2710 0.2294 • Columns 91 through 100 • 0.1909 0.1556 0.1237 0.0951 0.0702 0.0489 0.0314 0.0177 0.0079 0.0020 • Column 101 • 0.0000total • This is because the total area at the end of a sin curve is 0, due to the positive and negative regions