ECE 425 Introduction to Mobile Robotics Spring 10-11

Size: px
Start display at page:

Download "ECE 425 Introduction to Mobile Robotics Spring 10-11"

Transcription

1 ECE 425 Introduction to Mobile Robotics Spring Lab 1 Getting to Know Your Robot: Locomotion and Odometry (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday) Read this entire lab procedure and complete Part 1 before coming to lab. Purpose: The purpose of this lab is to confirm that you have all of the necessary software installed on your computer to connect to and program the Traxster II. The secondary goal is to get the Traxster II moving and to examine problems with raw odometry for pose estimation. Equipment: Base Robot Masking Tape Ruler Software: Microsoft Visual Studio.Net 2008 with C# Serializer.NET library and firmware Bluetooth transmitter Part 1 Software Installation Microsoft Visual Studio with C# If your laptop did not come with Microsoft Visual Studio, please follow these directions to install it. 1. Click Start -> Control Panel 2. Click Run Advertised Programs 3. Select Microsoft Visual Studio 2008 Professional 4. Click Run 5. Click Next through all of the default options Serializer library Click the following link to download the Serializer library Lab1.doc C.A. Berry Page 1 of 8

2 ECE 425 Introduction to Mobile Robotics Spring Bluetooth Transmitter You will connect to the Traxster II through a Bluetooth Serial Port. If your laptop did not come with a Bluetooth radio, please follow these directions for the HP nw8440. (If you have a different computer search the web for the driver) 1. Log into your computer as localmgr 1. Enable the Bluetooth radio on your computer or if you don t have the driver, download the Bluetooth driver for your specific laptop and enable it. All other required lab materials are in the course Angel folder for Lab 1. This folder contains documentation files for the robot hardware and software in this folder. This folder also contains your weekly lab assignments. 2. If you have done this correctly, the Bluetooth icon should appear in the lower right hand corner of the window. Double-click this icon to run Initial Bluetooth Configuration Wizard. 3. When you reach Bluetooth Services make sure that Bluetooth Serial is checked. 4. Complete the configuration wizard and click cancel to exit setup when finished. Part 2 Download the application code 1. Create a folder for all of your course programs 2. Go to the course Angel folder for Lab 1. Download the Demo_App.zip file and save it to the Lab 1 files on your computer. 3. Unzip the folder into your Lab 1 files. The code for this executable is located at Demo_App\IRSonar_App\Demo_app.sln. This program contains code for all of the sensors and peripherals on the robot and will be used to illustrate the Traxster II s capabilities. Part 3 Connect to the Traxster II 1. Turn on the robot 2. Confirm that the power light is on for the Bluetooth Serializer V Right click the Bluetooth icon in the tray on the bottom right hand of the screen 4. Click Explore Explore My Bluetooth Places 5. Click Entire Bluetooth Neighborhood Lab1.doc C.A. Berry Page 2 of 8

3 ECE 425 Introduction to Mobile Robotics Spring Find eb100. If you are in the classroom full of robots there will be many of them! Each Bluetooth s receiver has a serial number and it should be on a label on the robot. 7. Right click properties on each eb100 until you find the one with your serial number (i.e. Device address: 00:0c:84:3f:e9). 8. On the Authorization tab check Bluetooth Serial Port 9. Click OK 10. Right click Pair on the icon (the pass code is 0000 ) 11. Double Click on the eb100 icon and it should display A# serial port on eb100 not connected 12. Double click the icon and it should now show that you are connected to the robot. 13. Right click on the icon and the General tab will show which COM port the Bluetooth Serial port for the robot is connected on. You will need this number for your code! 14. (Optional: If you use the Bluetooth Setup Wizard you can configure your device to show the name of your robot, i.e. Bart under My Bluetooth Places versus eb100 this will save you time in the future when you connect to your robot.) 15. My Bluetooth Places should now show eb100 <RobotName> Connected: COM# 16. The robot should now be connected and ready to use. Part 4 Robot Demo 1. Run the Demo_App\bin\Debug\Demo_App.exe application 2. Make sure that the COM PORT on the GUI is the same as the Bluetooth serial port where the robot is connected. 3. After confirmation of connection, experiment with the locomotion, odometry and sensors. (Make sure the robot is clear of tables and legs!!) Verify that the display is consistent with the robot performance, if you find any inconsistencies take note of them and get the technician in the parts room to correct it. Part 5 Reviewing the Code 1. Open the solution (IRSonar_App/Demo_App.sln) in Microsoft Visual Studio 2. Examine the code and comments in DemoForm.cs and try to get some idea of how the program works. The code and comment format for this program is the standard you Lab1.doc C.A. Berry Page 3 of 8

4 ECE 425 Introduction to Mobile Robotics Spring should follow for your submitted code. You should also add additional comments to assist you in understanding the program flow in Visual C#. 3. Expand 'References' in the Solution Explorer, and ensure that RoboticsConnection.Serializer is properly resolved. This means it is listed under References, and that it has a white box icon next to it. If it has a yellow icon, then it isn't resolved. To resolve it, try double clicking on the 'RoboticsConnection.Serializer' namespace. If that doesn't work, then simply right click on RoboticsConnection.Serializer ' namespace, then 'Remove'. Now, right click on 'References', and then select 'Add Reference'. An Add Reference window pops up. Make sure you're under the.net tab, then scroll down to 'SerializerLib', and select it. It should now be in the References section correctly 4. Build the solution (F7) 5. Run the application (F5) 6. If the following error prints on the Output window after you connect, disconnect from the robot and cycle the power and connect again. (A first chance exception of type 'System.TimeoutException' occurred in System.dll) 7. You know the robot is successfully connected when the IR data is changing on the GUI. 8. Confirm that the code works the same as the Demo_App.exe application. ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Straight Line Now that we have code to control the robot, let's measure how well odometry performs. As you may recall from Part 1, the robot relies on odometry to determine how far it has traveled, and how far it has turned. If odometry readings are perfect, then the robot movement should be accurate and repeatable. 1. Select 4 different distances (6 in, 12 in, 18 in, 24 in) for the robot to drive and mark the start and stop positions with masking tape on the floor Lab1.doc C.A. Berry Page 4 of 8

5 ECE 425 Introduction to Mobile Robotics Spring Drive the robot for each distance 5 times generating 20 data points and record the data on a table. Perform an error analysis between each data point and the desired distance. Also, calculate the average distance traveled and state the shortest and longest distances. Also, state the standard deviation and create an x-y scatter plot of the data for inclusion in the lab memo. 3. Move the robot to the hallway and repeat part 2 and discuss the differences in the robot performance on a different surface. Does the odometry error change based upon the distance driven? What about if you change the robot speed, how does this affect the odometry error? Also find the standard deviation of the data and create an x-y scatter plot of the data for inclusion in the lab memo. (You don t have to take 20 data points just enough to adequately answer the questions). Part 2 Turn Angle 1. Select 4 different angles (90, 60, 30, and 15 ) for the robot to turn. 2. Turn the robot for each angle 5 times and repeat the data analysis from Part Does the error increase or decrease with rotation angle? What about if you change the robot speed, how does this affect odometry error? Part 3 Square Path Write a program to move the robot in a square path with sides between 2 and 3 feet (see Figure 1). Figure 1: Square Robot Motion 1. Place masking tape on the ground where the robot will start. 2. Run the Square program and place masking tape at each of the other three corners. Lab1.doc C.A. Berry Page 5 of 8

6 ECE 425 Introduction to Mobile Robotics Spring Move the robot back to the start point, run the square code, and place a marker where the robot turns and ends. 4. Repeat this 5 times and each time measure the distance between each pair of points (the correct corner and the actual) and compute an average. This is the average error. Part 4 More Paths 1. Write a Circle program to move the robot in a circle with a diameter between 2 and 3 feet (see Figure 2). 2. Write a FigureEight program to move the robot in a figure eight using two circles (see Figure 3). Figure 2: Circle Robot Motion Figure 3: Figure Eight Robot Motion Part 5 Robot Demonstration Finally, create a program to demonstrate all of your robot capabilities including any or all of the following peripherals: speech, sonar, IR, keypad, LCD, PID motor controller, temperature array, line following sensor. This program should run when you press a button on the user interface. Feel free to modify the user interface provided as necessary or actually abandon the interface and create your own. More questions to answer in the lab memo 1. What are some sources of the odometry error? 2. How could you correct for this error? 3. How could you improve the three motions (Square, Circle, FigureEight) programs? Lab1.doc C.A. Berry Page 6 of 8

7 ECE 425 Introduction to Mobile Robotics Spring Memo Guidelines: Please use the following checklist to insure that your memo meets the basic guidelines. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Includes handwritten initials of both partners at the top of the memo next to the names o Written as a paragraph not bulleted list o No longer than three pages of text Writing o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs o Answers all questions posed in the lab procedure o Clear statement of conclusions Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo 10 Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures Properly commented, easy to follow with modular components Partial comments and/or not modular with objects Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, Lab1.doc C.A. Berry Page 7 of 8

8 ECE 425 Introduction to Mobile Robotics Spring grammatical, content errors 5 Performs some of the functionality but with major failures or parts missing 0 Meets none of the design specifications or not submitted No comments, not modular, not easy to follow Not submitted Multiple grammatical, format, content, spelling errors, questions not answered Not submitted Submission Requirements: You must submit properly commented code for the square, circle and figure eight by midnight and the lab memo in a zipped folder by midnight on Sun day. Your code should be modular with functions and classes in order to make it more readable. You should use buttons, labels, input boxes on the GUI, and/or the keypad to switch between programs, distances or angles. You should use the buzzer, speech module or LCD to indicate changes in state. Lab1.doc C.A. Berry Page 8 of 8

9 ECE 425 Mobile Robotics Spring Lab 2 Random Wander, Obstacle Avoidance Reading: Introduction to AI Robotics (Sec. 4.3) (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday at midnight) Read this entire lab procedure before coming to lab. ************************************************************ Purpose: An essential characteristic of an autonomous robot is the capability to navigate in an environment safely. The purpose of this lab is to develop random wander and obstacle avoidance behaviors for the Traxster II. The design of your program should follow the subsumption architecture. Layer 0 of your control architecture will be the collide and run away behaviors to keep the robot from hitting obstacles. Layer 1 will be the random wander behavior which passes a random heading every n seconds to the robot. Equipment: Base robot 4 IR sensors 3 sonar on servo turret ruler keypad, speech module, LCD display obstacles Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Bluetooth transmitter Lab2.docx C.A. Berry Page 1 of 7

10 ECE 425 Mobile Robotics Spring ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Range Sensors There are four infrared and three sonar sensors on a servo on the Traxster II that you may use for obstacle avoidance. The infrared sensors are connected to the analog I/O on the serializer (0: front, 1: left, 2: right, 3:back). The Sharp GPD120 sensors measure between 1.5 and 12. The sonar are connected to the digital I/O on the serializer (5: left, 6: front, 7: right). The Maxbotix MaxSonar EZ1 Sonar has a reliable range of 6 to 20. In order to confirm functionality, you should take several measurements on each sensor to correlate the distance displayed with the actual distance to an object. You will need to use this information in order to have consistency between the different measurement devices and acceptable robot performance. You should write your code to account for any discrepancies. The best way to display this information would be to use a data table and perform an error analysis (see Table 1). Table 1: IR and Sonar Calibration Data Distance ( ) IR Error Sonar Error Lab2.docx C.A. Berry Page 2 of 7

11 ECE 425 Mobile Robotics Spring Part 2 Layer 0 - Obstacle Avoidance Now that you are familiar with the range sensors and how to move the robot, create an obstacle avoidance behavior. The obstacle avoidance abstract behavior includes a collide and run away primitive behaviors. For the collide behavior, if the forward facing sonar and/or infrared sensor fall between 3 and 6 inches, the robot should halt the forward drive motor. For the run away behavior, create a polar plot of the 7 sensor readings and use the sum to create a repulsive vector to turn the robot. This data should be displayed in some form along with the robot s current heading on the GUI or LCD. Finally, the robot should turn by this angle and move forward a short distance (6 to 12 inches) away from the obstacle (see Figure 1). Left IR Right IR Back IR force force RUN AWAY heading Turn Front IR Front Sonar Left Sonar Right Sonar force COLLIDE halt Forward Figure 1: Level 0 Obstacle Avoidance Note: You have the option of using the servo on sonar turret to provide more redundant coverage on the robot s front half. Part 3 Layer 1 - Random Wander Create a random wander routine that the robot uses to explore the room. This can be done by generating a random number that represents the robot s heading every n seconds. The current robot heading should be displayed on the LCD or GUI (see Figure 2). Lab2.docx C.A. Berry Page 3 of 7

12 ECE 425 Mobile Robotics Spring Random number WANDER heading Turn Forward Figure 2: Level 1 Wander Part 4 Subsumption Architecture Obstacle avoidance and Random wander Now improve the random wander routine by integrating obstacle avoidance. The robot should wander randomly until an obstacle is encountered. The robot should RunAway from the obstacle and continue to wander. The robot s heading from the Wander behavior should be modified based upon the force from the range sensors and then turn and move from the obstacle. The Avoid module in Layer 1 combines the FeelForce vector with the Wander vector. The Avoid module then subsumes the heading from the Run Away module and replaces it with the modified heading as input to the Turn module. Figure 3: Subsumption Architecture - Obstacle Avoidance, Random Wander Example s Your program should provide a method to get the robot unstuck if it approaches any local minima points (i.e. oscillates between two obstacles). Your program should be as modular as possible with multiple subroutines and behaviors that will be integrated in subsequent programs. Devise a method to test and confirm that your program works correctly and present Lab2.docx C.A. Berry Page 4 of 7

13 ECE 425 Mobile Robotics Spring the results in the laboratory memo. Figure 4 provides sample motion for the fully integrated robot behaviors. Figure 4: Subsumption Architecture Sample Robot Motion Demonstration: During the demonstration, you will show each layer of the architecture separately. For layer 0, the robot should sit until an obstacle gets close and then it should run away. For layer 1, the robot should turn at a random heading and move forward periodically. Finally, to demonstrate the complete architecture the robot should wander and halt when it collides with an obstacle, or modify the heading when it encounters and obstacle and then run away. The robot should give some type of audible and/or visual signal when an obstacle is encountered. The GUI or LCD should show the robot s current heading. Lastly, the LCD or GUI should also display the current state of the robot (waiting, wander or obstacle avoidance). You may use the keypad or GUI to start or stop the robot for the demonstration. Program: In subsequent weeks you will reuse this code thus your code should follow proper programming techniques such as detailed commenting and be as modular as possible where behaviors and reactive rules are separate functions. You may start with the Demo_App.sln program or create your own from scratch. If you use the sample code, it must be modified to reflect your work and documentation. Lab2.docx C.A. Berry Page 5 of 7

14 ECE 425 Mobile Robotics Spring Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Written as a paragraph not bulleted list o No longer than three pages of text Writing o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs o Answers all questions posed in the lab procedure o Clear statement of conclusions Questions to Answer in the Memo: 1. What was the general plan you used to implement the random wander and obstacle avoidance behaviors? 2. How did you create a modular program and integrate the two layers into the overall program? 3. Did you use the servo turret to create redundant sensing on the robot s front half. 4. How could you create a smart wander routine to entirely cover a room? 5. What kind of errors did you encounter with the obstacle avoidance behavior? 6. How could you improve the obstacle avoidance behavior? 7. Were there any obstacles that the robot could not detect? 8. Were there any situations when the range sensors did not give you reliable data? Lab2.docx C.A. Berry Page 6 of 7

15 ECE 425 Mobile Robotics Spring How did you keep track of the robot s states in the program? 10. Did the robot encounter any stuck situations? How did you account for those? Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo 10 Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures 5 Performs some of the functionality but with major failures or parts missing 0 Meets none of the design specifications or not submitted Properly commented, easy to follow with modular components Partial comments and/or not modular with objects No comments, not modular, not easy to follow Not submitted Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, grammatical, content errors Multiple grammatical, format, content, spelling errors, questions not answered Not submitted Submission Requirements: You must submit the lab memo and code by midnight on Thursday. You must also submit a memo for Lab 1 by midnight on Sunday. Lab2.docx C.A. Berry Page 7 of 7

16 ECE 425 Mobile Robotics Spring Lab 3 Wall Following: PD Control Reading: Introduction to AI Robotics (Sec. 4.3), Lec. 3-1 (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday) Read this entire lab procedure before coming to lab. ************************************************************ Purpose: The purpose of this lab is to implement a wall following behavior on the Traxster II by using feedback control. The sonar and IR sensors will be used to detect the wall and the robot should use proportional-derivative (PD) control to maintain a distance between 4 and 6 inches from the wall. The wall following behavior should then be integrated as the top layer onto the subsumption architecture implementd in Lab 2. Equipment: Base Robot 4 IR Sensors 3 sonar on servo turret keypad, speech module, LCD display obstacles, walls Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Bluetooth transmitter Lab3.docx C.A. Berry Page 1 of 6

17 ECE 425 Mobile Robotics Spring ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Wall Following Design a wall following behavior for the Traxster II using PD control. The robot should start at least 10 inches from the all and move toward the wall and maintain a distance of 4 to 6 inches from the wall as it follows the wall for at least 4 feet. The robot should follow the wall while negotiating obstacles, corners and doorways with minimal contact with walls and obstacles. It is recommended that you start with a proportional controller using error based upon distance from the wall [K p (error input)]. The gain on the controller should control heading and possibly motor speed. The first step would be to tune the proportional controller by selecting the gain with the best performance. Once the proportional control works at an acceptable level try to incorporate a derivative controller, [K d d (error input)/dt]. Since the derivative of the error is the rate of change, it will be necessary to store the last value of the error and find the difference with respect to the current value and divide it by the sensor update rate. This time step should be close to 100 ms since the serializer pumps events on a timer set to 100 ms. Finally, tune the derivative controller to yield the best robot performance. Devise a method to test that the wall following behavior works correctly and report the results in the lab memo. Figure 1 presents a sample proportional - derivative controller for wall following. Figure 1 Wall Following PD Controller Lab3.docx C.A. Berry Page 2 of 6

18 ECE 425 Mobile Robotics Spring Part 2 Follow Center Improve the wall following behavior created in part I such that if the robot detects a wall on both sides (i.e. hallway), it will move to the center and stay in the middle until one of the walls is lost. At that point, the robot should return to the basic wall following behavior. If both walls are lost the robot should then return to wandering the environment with obstacle avoidance. Part 3 Layers 2 and 3 Subsumption Architecture Now modify the obstacle avoidance program created in Lab 2 so that there is a follow wall and stay in the middle layer. The follow wall is layer 2 and the follow center is layer 3. The robot should wander until an obstacle is detected and attempt to navigate around it by maintaining a distance of 4 to 6 inches. If the robot encounters a wall or obstacles on both sides, it should move to the center of the two objects and move forward. You should attempt to address issues such as doors, getting unstuck from corners and turning corners (see Figure 2). Note that although the robot circumvents obstacle 1 in the figure, your architecture may cause the robot to get stuck in a loop circling the box. If this happens, what could you do to break the robot out of this endless loop? Devise a method to test and confirm that your program works correctly and present the results in the laboratory memo. Figure 2: Wall Following Example Lab3.docx C.A. Berry Page 3 of 6

19 ECE 425 Mobile Robotics Spring Demonstration: Similar to Lab 2, the demonstration will involve showing that each behavior works separately and then that the integrated behaviors with the architecture works properly. The first test will be that the robot is able to detect a wall from 10 inches away and move toward it and follow on the robot s left or right. The robot will also be tested on its ability to navigate an obstacle next to the wall and how it handles doorways in the wall. The next demonstration will be to place the robot in a hallway and show that it moves to the center and continues to follow the hallway until one or both walls are lost. Lastly, the architecture will be evaluated by the robot starting in a wander behavior until an obstacle is detected, the robot should then attempt to follow the object or wall at a distance of 4 to 6 inches unless a wall is detected on the opposite side. At that point the robot should attempt to follow the center of the hallway until one or both walls is lost. Program: The program should be properly commented and modular with each new behavior representing a new function call. The design of the subsumption architecture should be evident from the program layout. You should use the GUI, keypad, LCD and speech module as needed to illustrate robot state, input and output data. Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Written as a paragraph not bulleted list o No longer than three pages of text Writing o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Lab3.docx C.A. Berry Page 4 of 6

20 ECE 425 Mobile Robotics Spring Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs o Answers all questions posed in the lab procedure o Clear statement of conclusions Questions to Answer in the Memo: 1. What does diagram for the 3 layer subsumption architecture look like? 2. What did the robot do when it encountered a corner while wall following? 3. What did the robot do when it encountered doorways and/or corners? 4. When tuning the proportional controller and/or derivative controller, did the robot exhibit any oscillating, damping, overshoot or offset error? If so, how much? 5. What were the results of the different P and D controller gains? How did you decide which one to use? 6. How accurate was the robot at maintaining a distance between 4 and 6 inches? 7. Did the robot ever lose the wall? 8. Compare and contrast the performance of the Wander and Avoid behaviors compared to last week s lab. 9. What was the general plan to implement the feedback control and subsumption architecture on the robot? 10. How could you improve the control architecture and/or wall following/follow center behaviors? 11. What does the overall subsumption architecture diagram with all 4 layers look like? 12. What was the pseudocode and flow chart for the program design? 13. Did you use any suppression and inhibition with the integration of Layers 2 and 3? Lab3.docx C.A. Berry Page 5 of 6

21 ECE 425 Mobile Robotics Spring Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo 10 Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures 5 Performs some of the functionality but with major failures or parts missing 0 Meets none of the design specifications or not submitted Properly commented, easy to follow with modular components Partial comments and/or not modular with objects No comments, not modular, not easy to follow Not submitted Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, grammatical, content errors Multiple grammatical, format, content, spelling errors, questions not answered Not submitted Submission Requirements: You must submit the lab memo and code by midnight on Thursday. You must also submit a memo for Lab 3 by midnight on Sunday. Lab3.docx C.A. Berry Page 6 of 6

22 ECE 415 Mobile Robotics Spring Lab 4 Line Following: PI Control Reading: Introduction to AI Robotics (Sec. 4.3), Lec. 3-1 (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Thursday) Read this entire lab procedure before coming to lab. ************************************************************ Purpose: The purpose of this lab is to implement a line following behavior on the Traxster II by using feedback control. The line following sensor will be used to detect the line and the robot should use proportional integral (PI) control to follow the line for at least one lap of the track. Finally, the line following behavior should then be integrated as the top layer onto the subsumption architecture implemented in Lab 2. Equipment: Base Robot 4 IR Sensors 3 sonar on servo turret keypad, speech module, LCD display obstacles line path Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Bluetooth transmitter Lab4.docx C.A. Berry Page 1 of 5

23 ECE 415 Mobile Robotics Spring ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Line Following A finite state machine will be used to implement line following behavior on the Traxster II robot. The robot should start over the line and keep track of how many of the five sensors are activated. The goal should be to keep 4 to 5 of the sensors activated as the robot traverses the line. The robot states should include on line_go forward, slight left, sharp left, slight right, and sharp right. The PI controller would be used to determine the angle or heading for the turn and possibly the angular or linear velocity based upon the robot s current state. The first step is to design the proportional (P) controller, where the error is the difference between the desired number of activated line sensors and the actual number of activated line sensors [K p (error input)]. Tune the gain on the P controller until the robot can follow a straight line at an acceptable level. Recall that the integral (I) controller should correct for offset error and should be triggered when the accumulated error reaches a pre-specified threshold and then modify the robot s heading or turn speed [K i (error input)dt]. In order to implement the I controller, it is necessary to keep track of the robot s error after each sensor update and then sum. Next, tune the integral controller until the robot follows a straight line at an acceptable level. Finally, devise a method to test that the line following behavior works correctly and completely traverses a circular path (see Figure 1).. Figure 1 Line Following PI Controller Lab4.docx C.A. Berry Page 2 of 5

24 ECE 415 Mobile Robotics Spring Part 2 Layer 2 Subsumption Architecture Now modify the obstacle avoidance program created in Lab 2 so that there is a line follow layer. The robot should wander safely through the environment until a line path is detected. The robot should then abandon the wander behavior and follow the path. If the path is lost, the robot should return to the wandering behavior. Demonstration: The demonstration of the program for lab 4 will be performed in two parts. In the first part, the robot will start over the line and after input from the keypad or GUI the robot should start to follow the line and maintain contact as long as possible. There should be a mechanism to show the robot s current state and heading based upon output from the controller. In the second part, the robot should start in the world and wander while avoiding obstacles. Once the robot encounters a line, the robot should follow the path as long as possible. If the line is lost, the robot should return to the wander with obstacle avoidance behavior. As always, there should be a mechanism to identify the robot s state and/or behavior and heading. Program: The program should be properly commented and modular with each new behavior representing a new function call. The design of the subsumption architecture should be evident from the program layout. You should use the GUI, keypad, LCD and speech module as needed to illustrate robot state, input and output data. Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Written as a paragraph not bulleted list o No longer than three pages of text Writing Lab4.docx C.A. Berry Page 3 of 5

25 ECE 415 Mobile Robotics Spring o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs o Answers all questions posed in the lab procedure o Clear statement of conclusions Questions to Answer in the Memo: 1. What does the subsumption architecture with the integrated line following behavior diagram look like? 2. Did you use any inhibition and/or suppression to integrate the line following behavior in the existing architecture? 3. Did the robot exhibit any overshoot, oscillating or offset error? 4. What were the results of the different P and I controller gains? How did you decide which one to use? 5. Did the addition of the integral controller improve the performance and decrease the offset error? 6. What was the pseudocode and flow chart for the program design? 7. What were the statistics for the robot s ability to successfully traverse the path? How long? How many times? How many laps? Repeatability? Accuracy? 8. How could you improve the line following behavior? Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo Lab4.docx C.A. Berry Page 4 of 5

26 ECE 415 Mobile Robotics Spring Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures 5 Performs some of the functionality but with major failures or parts missing 0 Meets none of the design specifications or not submitted Properly commented, easy to follow with modular components Partial comments and/or not modular with objects No comments, not modular, not easy to follow Not submitted Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, grammatical, content errors Multiple grammatical, format, content, spelling errors, questions not answered Not submitted Submission Requirements: You must submit the lab memo and code by midnight on Thursday. You must also submit a memo for Lab 4 by midnight on Thursday. Lab4.docx C.A. Berry Page 5 of 5

27 ECE 425 Mobile Robotics Spring Lab 5 Homing Hybrid Control Reading: Introduction to AI Robotics (Ch. 7), Lec. 5-2 (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday) Purpose: The purpose of this lab is to use a type of locomotion called homing or docking with hybrid control to move the Traxster toward a heat beacon. There will be a heat beacon placed in the environment which the robot can easily sense. The goal will be for the robot to move toward the beacon and stop just before hitting it. There will be no fixed path to the beacon, the robot should follow the walls and avoid obstacles until the beacon is sensed, it should then leave the wall, and use the move to goal behavior to dock on the source. Lastly, the robot should then attempt to return to the wall by turning 180 degrees follow as near as possible to the spot where it left. Equipment: Base Robot Thermopile Array Servo Panner Heat source Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Bluetooth transmitter Lab5.docx C.A. Berry Page 1 of 6

28 ECE 425 Mobile Robotics Spring ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Testing the temperature array 1. The TPA81 can detect a candle flame at a range of 2 meters (6 feet) and is unaffected by ambient light. It can also be used to control a servo although you will control panning of the array on the servo through your code. Recall that the first data point on the array is the ambient room temperature. The field of view is 41 by 6 for the eight sensors with each one having a field of view of 5.12 by 6. A human at 2 meters will show up as approximately 84 F with an ambient temperature of 68 F. 2. Calibrate your thermopile array by measuring the detected temperature versus distance and angle from the source (person, laptop, heater, etc). You should include this data table with objects, distances and temperatures in you lab memo. Use this calibration in order to develop the reactive layer of the control architecture. 3. You should include a data table in your lab memo that indicates your results. Part 2 Move To Goal (Homing) 1. The hybrid control architecture that you will implement to home the robot includes a reactive layer (obstacle avoidance, wall following, move to goal, path update), middle layer (arbitrator), and deliberative layer (current state, path plan back to wall). This architecture is shown in Figure 1. Your code should be written in a modular fashion with functions such that it is evident where the planning, sensing and acting take place. PLAN SENSE ACT Figure 1: Homing Hybrid Control Architecture 2. The partial world map (representation) includes direction to the beacon and back to the wall with respect to the robot s current pose. This representation will be input into the deliberative layer for path planning. Updates to the path will be based upon feedback from the distance, heading and thermopile sensors. The middle layer will be used to Lab5.docx C.A. Berry Page 2 of 6

29 ECE 425 Mobile Robotics Spring make decisions about whether path updates are handled in the deliberative or reactive layer. The reactive layer will handle obstacle avoidance, wall following and move to goal behaviors. The robot should turn around and follow the path to drive back to the wall. 3. Based upon the above model, write code to home the Traxster robot to the heat source (see Figure 2). The robot should come within one foot of the beacon without touching it. Figure 2: Robot homing 4. Test your final control algorithm for several different robot start points or beacon locations and summarize the results in your lab memo. Part 3 Dock the Robot and Return to the Wall 1. Improve the homing routine implemented in part 2 by docking the robot and returning to the wall to continue to follow where it left off. The robot should turn around and follow the path to drive back to the wall. Figure 3: Robot Docking Lab5.docx C.A. Berry Page 3 of 6

30 ECE 425 Mobile Robotics Spring Demonstration: The demonstration of the program for lab 5 will include three parts. In the first part, the robot will be placed in the environment, wander until it finds a wall and then follow the wall until the heat beacon is detected. The robot should then move to goal and stop within one foot of the heat beacon. In the second part, the robot should turn and dock on the heat. Lastly, the robot should return to the wall as close as possible to where it left off and continue to follow the wall. Program: The program should be properly commented and modular with each new behavior representing a new function call. The design of the subsumption architecture should be evident from the program layout. You should use the GUI, keypad, LCD and speech module as needed to illustrate robot state, input and output data. Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Written as a paragraph not bulleted list o No longer than three pages of text Writing o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs Lab5.docx C.A. Berry Page 4 of 6

31 ECE 425 Mobile Robotics Spring o Answers all questions posed in the lab procedure o Clear statement of conclusions Questions to Answer in the Memo: 1. What does the hybrid control architecture for your design look like? What was on the planning layer? Middle layer? Reactive layer? 2. What were the results of the testing of the servo and thermopile array? 3. What was your general strategy for planning the path back to the wall from the heat source? 4. How reliable was the thermopile array at detecting different objects such as a human or the space heater. 5. Compare and contrast sensor data from a person, heater and your laptop or other objects. 6. How significant was the difference in temperature readings between the individual sensors on the array? How did you use this difference to extract directional information to move the robot toward the beacon? 7. How significant was the difference in temperature readings based upon distance from the source? How did you use this difference to extract distance information to move the robot toward the beacon? 8. How did the architecture respond to differences in robot start position or beacon location? 9. How did the robot s hybrid controller respond to dynamic changes in the environment (i.e. other robots and people) and compare this to purely deliberative control. 10. Were there any challenges in implementing the homing routine? 11. What could you do to improve the robot homing? 12. How did docking the robot modify the control architecture or algorithm? 13. How could you use the thermopile array for person tracking? Lab5.docx C.A. Berry Page 5 of 6

32 ECE 425 Mobile Robotics Spring Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo 10 Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures 5 Performs some of the functionality but with major failures or parts missing 0 Meets none of the design specifications or not submitted Properly commented, easy to follow with modular components Partial comments and/or not modular with objects No comments, not modular, not easy to follow Not submitted Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, grammatical, content errors Multiple grammatical, format, content, spelling errors, questions not answered Not submitted Submission Requirements: You must submit the lab memo and code by midnight on Thursday. You must also submit a memo for Lab 5 by midnight on Sunday. Lab5.docx C.A. Berry Page 6 of 6

33 ECE 425 Mobile Robotics Spring Lab 6 Topological Path Planning Reading: Introduction to AI Robotics (Ch. 9), Lecture 6-1 (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday) Purpose: The purpose of this lab is to use topological navigation to move the robot to a goal position. The student team will design behaviors and perceptual schema for identifying gateways in an artificial environment. Recall that a gateway is a landmark or distinctive place in the world where the robot makes a navigation decision. The robot will be given a list of navigation commands based upon the world s topology and use a parsing routine and a sequencer to move the robot from a start point to a goal point. For example, if the robot is given SLRT (S = Start, L = go Left, R = go Right, T = Terminate) then it would start, go straight, turn left at the next gateway, turn right at the next gateway, then stop at the last gateway. The robot should continue to move forward until a gateway is encountered or until the stop command is encountered. In order to extend the robot s topological path planning capabilities, the navigation commands could be modified to include numerical information such as 3L (make the third lef ) or 1L (make the first available left). This would mean that the robot must keep track of the type of gateway encountered, the number of hallways passed or if the robot encounters a hallway on the right it would continue to move forward until it could make a left. Equipment: Base Robot IR/Sonar Sensors (use both for redundancy to account for sensor error) Servo Panner Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Lab6.docx C.A. Berry Page 1 of 6

34 ECE 425 Mobile Robotics Spring Bluetooth transmitter ****************************************************************************** LAB PROCEDURE ****************************************************************************** Part 1 Perceptual Schema 1. The student team should place the robot in several corners and intersections of hallways in the artificial environment and determine the perceptual schema to identify these gateways and distinctive places. 2. It would be advisable to use a combination of the IR and sonar for sensor redundancy to identify these locations in the world. There will be some sensor error, this is a standard problem in mobile robot navigation and the program should be designed in such a way to minimize the effect of the error. Figure 1 provides descriptions of the possible world landmarks. Figure 1: Distinctive Places s 3. Include a table similar to Table 1 that includes the test data and perceptual schema for each of the landmarks. Lab6.docx C.A. Berry Page 2 of 6

35 ECE 425 Mobile Robotics Spring Table 1: Perceptual Schema Data Table Landmark Front IR Left IR Right IR Front Sonar Left Sonar Right Sonar Servo Setting (if applicable) Corner in front Corner on left Corner on right Hallway on both sides Hallway on left Hallway on right T-junction Dead End Part 2 Sequencer 1. The program should open and read a.txt file that includes the instruction set for the robot s waypoints. You will be given some sample code in Angel for file handling in Visual C# if you would like to use it. 2. The code should parse the text file and the list of instructions for the sequencer should be displayed on the GUI or on the console. 3. The commands will include S = Start, #L = Left, #R = Right, T = Stop and the robot should sequence to the next step at each distinctive place or gateway. See Figure 2 for an example of the robot s path execution. The robot should continue to move forward until the stop command is encountered. Figure 2: Topological Navigation Example ( SLLLRT ) Lab6.docx C.A. Berry Page 3 of 6

36 ECE 425 Mobile Robotics Spring Part 3 Move to Goal 1. There should be a command button placed on the GUI that sends the list of instructions to the robot. 2. When pressed the robot should move through the list of gateways to a goal point. 3. The robot s current state and navigation progress should be displayed on the GUI or console. Demonstration: The demonstration of the program for lab 6 will include three parts. In the first part, the robot will navigate in the environment using behaviors and indicate when it has reached a gateway or distinctive place (i.e. intersection of hallways or corner). In the second part, the program should display the instructions for the sequencer on the GUI. In the third part, the robot should move from a start position and move through the topological path instructions to a goal point. Program: The program should be properly commented and modular with each new behavior representing a new function call. The design of the subsumption architecture should be evident from the program layout. You should use the GUI, keypad, LCD and speech module as needed to illustrate robot state, input and output data. Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font o Spacing no larger than double space o Written as a paragraph not bulleted list o No longer than three pages of text Writing o Memo is organized in a logical order o Writing is direct, concise and to the point o Written in first person from lab partners o Correct grammar, no spelling errors Lab6.docx C.A. Berry Page 4 of 6

37 ECE 425 Mobile Robotics Spring Content o Starts with a statement of purpose o Discusses the strategy or pseudocode for implementing the robot paths (may include a flow chart) o Discusses the tests and methods performed o States the results including error analysis o Shows data tables with error analysis and required plots or graphs o Answers all questions posed in the lab procedure o Clear statement of conclusions Questions to Answer in the Memo: 1. What did the hybrid architecture for your final design look like? 2. What were the results of the analysis for the perceptual schema? What type of errors did you encounter? How did you attempt to minimize the error in your design? 3. How did you correct for the robot s odometry error? Were you were able to use the landmarks to localize the robot and correct for this error? 4. How did you communicate the robot s current state to the user? 5. How could you improve the topological path planning algorithm? Grading Rubric: The lab is worth a total of 30 points and is graded by the following rubric. Points Demonstration Code Memo 10 Excellent work, the robot performs exactly as required 7.5 Performs most of the functionality with minor failures 5 Performs some of the functionality but with major failures or parts Properly commented, easy to follow with modular components Partial comments and/or not modular with objects No comments, not modular, not easy to Follows all guidelines and answers all questions posed Does not answer some questions and/or has spelling, grammatical, content errors Multiple grammatical, format, content, Lab6.docx C.A. Berry Page 5 of 6

38 ECE 425 Mobile Robotics Spring missing follow spelling errors, questions not answered 0 Meets none of the design specifications or not submitted Not submitted Not submitted Submission Requirements: You must submit the lab memo and code by midnight on Thursday. You must also submit a memo for Lab 6 by midnight on Sunday. Lab6.docx C.A. Berry Page 6 of 6

39 ECE 425 Mobile Robotics Spring Lab 7 Path Planning (Occupancy Grid and Topological Map) Reading: Introduction to AI Robotics (Ch. 10), Lectures 6-2, 7-1 (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Sunday) Purpose: The purpose of this lab is to implement metric path planning by using a wavefront or grassfire expansion on an occupancy grid and topological map to move the mobile robot from a start point to a goal point. Equipment: Base Robot IR/Sonar Sensors Servo Panner Software: Microsoft Visual Studio.NET 2008 with C# Serializer.NET library and firmware Bluetooth transmitter ****************************************************************************** LAB PROCEDURE ***************************************************************************** Metric Map Path Planning and Execution 1. Use a wavefront algorithm on an a priori map to create a path from the robot s start position to goal location. Use the obstacle avoidance and move to goal behaviors to move through the list of goal points until the robot arrives at the final destination. Assume that the algorithm uses an eight-neighborhood so that the robot can move diagonally. 2. The configuration space will be an occupancy grid divided into 18 x 18 squares, where free space is represented by 0 s and occupied space by 99 s. You should devise a scheme to represent the robot s start position and goal position. Your code should be flexible such Lab7_v2.docx C.A. Berry Page 1 of 8

40 ECE 425 Mobile Robotics Spring that these values can be specified at run time. Figure 1 is an example of the world representation S a. Real world b. Configuration Space (8 x 8 matrix) Figure 1: World Representation 3. The test arena for the lab demonstration will be 6 ft x 6 ft with 18 x 18 obstacles. This artificial world will be a 4 x 4 grid where the robot s start point is denoted by a and the goal point is marked by an X. a. Artificial world b. Real world Figure 2: Test Arena 4. The wavefront is created by starting at the destination and creating eight connected neighbors back to the start point. The robot then follows the numbers in the reverse order to arrive at the goal point (see Figure 3). The goal is for the robot to always move such that Lab7_v2.docx C.A. Berry Page 2 of 8

41 ECE 425 Mobile Robotics Spring the steps to the goal position are reduced. Note that you may need to grow the obstacles by the robot s width to avoid clipping them Figure 3: Test Arena Wavefront 5. During the demonstration, you will be given the map as a 8 x 8 array of 0 s and 99 s in.txt file that represents free space and obstacles. You will be given the robot s start position at the beginning of the demonstration. Your program should open the.txt file, read the world map as an array, run the wavefront algorithm and plan the path to move the robot from the start position to the goal. You also have the option of using the MapTools code in the Angel course folder to load the map, read the data and draw it on a GUI or you can create your own method for using the world representation. 6. You should then place your robot at the start position and press start and it should move to the goal point. You will be graded on how well your algorithm works; the efficiency of the path chosen by the robot, the ability of the robot to reach the goal point while also avoiding obstacles. (Note that the robot s center of rotation is between its wheels not the center of the chassis so you should offset the robot in the starting cell so that the robot s center of rotation is at the center of the cell. Another technique to prevent the robot from hitting walls and obstacles is to select the path that maximizes the distance between walls and obstacles or the center line.) Lab7_v2.docx C.A. Berry Page 3 of 8

42 ECE 425 Mobile Robotics Spring Topological Map Path Planning and Execution 1. In this exercise, you will use an a priori topological map to plan a path from the robot start location to a goal position using a wavefront algorithm. Instead of representing the world map as an occupancy grid as in last week s lab, it will be based upon the topology of the space. The salient features of the space are walls, hallways, corners and junctions. Each square will be represented by an integer between 0 and 15, dependent upon where walls are present around the square. The north (0001), east (0010), south (0100) and west (1000) walls represent one bit of that integer (see Table 1). Table 1: Topological map coding Integer Binary Hexadecimal Direction Wall Location North East South West a b c d e f Using the coding in Table 1, the maze shown in Figure 2 is represented by an 11 x 10 matrix of integers. Lab7_v2.docx C.A. Berry Page 4 of 8

43 ECE 425 Mobile Robotics Spring Figure 2: Maze Topological Map 2. To use the topological map to plan a path from a robot start location to a goal point it is possible to use the wavefront algorithm again. However, instead of the robot moving to cells on the occupancy grid, the robot will use behaviors and rules such as move forward, turn left, follow wall, follow hallway, avoid obstacle, etc. The navigation involves taking the list of actions and executing them. 3. During the demonstration, you will be given the map as an 8 x 8 array of integers or in a.txt file that represents the world s salient features. Figure 3 provides an example of the world representation. You will be given the robot s start position at the beginning of the demonstration. Your program should open the.txt file, read the world map as an array, and use an algorithm to plan the path to move the robot from the start position to the goal. You should then place your robot at the start position and press start and it should move to the goal point. You will be graded on how well your algorithm works; the efficiency of the path chosen by the robot, the ability of the robot to reach the goal point while also avoiding obstacles. (Note that the robot s center of rotation is between its wheels not the center of the chassis so you should offset the robot in the starting cell so that the robot s center of rotation is at the center of the cell. Another technique to prevent the robot from hitting Lab7_v2.docx C.A. Berry Page 5 of 8

44 ECE 425 Mobile Robotics Spring walls and obstacles is to select the path that maximizes the distance between walls and obstacles or the center line (see Voronoi diagram).) c. Artificial world d. Representation Figure 3: Topological Map Demonstration: The demonstration of the program for lab 7 will include two phases. In the first phase, the robot will navigate from a start point to a goal point using wavefront expansion on a metric map (occupancy grid). For the second phase of the demonstration the robot will navigate from a start point to a goal point using wavefront expansion on a topological map of the world s salient features. The list of robot commands and generated wavefront should be shown on the GUI to make it evident the state that the robot is in. Program: The program should be properly commented and modular with each new behavior representing a new function call. The design of the architecture should be evident from the program layout. You should use the GUI, keypad, LCD and speech module as needed to illustrate robot state, input and output data. Memo: The following list provides the basic guidelines for writing a technical memorandum. Format o Begins with Date, To, From, Subject o Font no larger than 12 point font Lab7_v2.docx C.A. Berry Page 6 of 8

ECE 497 Introduction to Mobile Robotics Spring 09-10

ECE 497 Introduction to Mobile Robotics Spring 09-10 Lab 1 Getting to Know Your Robot: Locomotion and Odometry (Demonstration due in class on Thursday) (Code and Memo due in Angel drop box by midnight on Thursday) Read this entire lab procedure and complete

More information

GE 320: Introduction to Control Systems

GE 320: Introduction to Control Systems GE 320: Introduction to Control Systems Laboratory Section Manual 1 Welcome to GE 320.. 1 www.softbankrobotics.com 1 1 Introduction This section summarizes the course content and outlines the general procedure

More information

MEM380 Applied Autonomous Robots I Winter Feedback Control USARSim

MEM380 Applied Autonomous Robots I Winter Feedback Control USARSim MEM380 Applied Autonomous Robots I Winter 2011 Feedback Control USARSim Transforming Accelerations into Position Estimates In a perfect world It s not a perfect world. We have noise and bias in our acceleration

More information

CURIE Academy, Summer 2014 Lab 2: Computer Engineering Software Perspective Sign-Off Sheet

CURIE Academy, Summer 2014 Lab 2: Computer Engineering Software Perspective Sign-Off Sheet Lab : Computer Engineering Software Perspective Sign-Off Sheet NAME: NAME: DATE: Sign-Off Milestone TA Initials Part 1.A Part 1.B Part.A Part.B Part.C Part 3.A Part 3.B Part 3.C Test Simple Addition Program

More information

GE423 Laboratory Assignment 6 Robot Sensors and Wall-Following

GE423 Laboratory Assignment 6 Robot Sensors and Wall-Following GE423 Laboratory Assignment 6 Robot Sensors and Wall-Following Goals for this Lab Assignment: 1. Learn about the sensors available on the robot for environment sensing. 2. Learn about classical wall-following

More information

Robot Architectures. Prof. Holly Yanco Spring 2014

Robot Architectures. Prof. Holly Yanco Spring 2014 Robot Architectures Prof. Holly Yanco 91.450 Spring 2014 Three Types of Robot Architectures From Murphy 2000 Hierarchical Organization is Horizontal From Murphy 2000 Horizontal Behaviors: Accomplish Steps

More information

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT F. TIECHE, C. FACCHINETTI and H. HUGLI Institute of Microtechnology, University of Neuchâtel, Rue de Tivoli 28, CH-2003

More information

due Thursday 10/14 at 11pm (Part 1 appears in a separate document. Both parts have the same submission deadline.)

due Thursday 10/14 at 11pm (Part 1 appears in a separate document. Both parts have the same submission deadline.) CS2 Fall 200 Project 3 Part 2 due Thursday 0/4 at pm (Part appears in a separate document. Both parts have the same submission deadline.) You must work either on your own or with one partner. You may discuss

More information

Robot Architectures. Prof. Yanco , Fall 2011

Robot Architectures. Prof. Yanco , Fall 2011 Robot Architectures Prof. Holly Yanco 91.451 Fall 2011 Architectures, Slide 1 Three Types of Robot Architectures From Murphy 2000 Architectures, Slide 2 Hierarchical Organization is Horizontal From Murphy

More information

Congratulations on your decision to purchase the Triquetra Auto Zero Touch Plate for All Three Axis.

Congratulations on your decision to purchase the Triquetra Auto Zero Touch Plate for All Three Axis. Congratulations on your decision to purchase the Triquetra Auto Zero Touch Plate for All Three Axis. This user guide along with the videos included on the CD should have you on your way to perfect zero

More information

Capstone Python Project Features

Capstone Python Project Features Capstone Python Project Features CSSE 120, Introduction to Software Development General instructions: The following assumes a 3-person team. If you are a 2-person team, see your instructor for how to deal

More information

I.1 Smart Machines. Unit Overview:

I.1 Smart Machines. Unit Overview: I Smart Machines I.1 Smart Machines Unit Overview: This unit introduces students to Sensors and Programming with VEX IQ. VEX IQ Sensors allow for autonomous and hybrid control of VEX IQ robots and other

More information

Dipartimento di Elettronica Informazione e Bioingegneria Robotics

Dipartimento di Elettronica Informazione e Bioingegneria Robotics Dipartimento di Elettronica Informazione e Bioingegneria Robotics Behavioral robotics @ 2014 Behaviorism behave is what organisms do Behaviorism is built on this assumption, and its goal is to promote

More information

Behaviour-Based Control. IAR Lecture 5 Barbara Webb

Behaviour-Based Control. IAR Lecture 5 Barbara Webb Behaviour-Based Control IAR Lecture 5 Barbara Webb Traditional sense-plan-act approach suggests a vertical (serial) task decomposition Sensors Actuators perception modelling planning task execution motor

More information

FLL Programming Workshop Series

FLL Programming Workshop Series FLL Programming 2017 Workshop Series 2017 1 Prerequisites & Equipment Required Basic computer skills Assembled EV3 Educational robot or equivalent Computer or Laptop with LEGO Mindstorms software installed

More information

Lab 2: Introduction to Real Time Workshop

Lab 2: Introduction to Real Time Workshop Lab 2: Introduction to Real Time Workshop 1 Introduction In this lab, you will be introduced to the experimental equipment. What you learn in this lab will be essential in each subsequent lab. Document

More information

OughtToPilot. Project Report of Submission PC128 to 2008 Propeller Design Contest. Jason Edelberg

OughtToPilot. Project Report of Submission PC128 to 2008 Propeller Design Contest. Jason Edelberg OughtToPilot Project Report of Submission PC128 to 2008 Propeller Design Contest Jason Edelberg Table of Contents Project Number.. 3 Project Description.. 4 Schematic 5 Source Code. Attached Separately

More information

Nebraska 4-H Robotics and GPS/GIS and SPIRIT Robotics Projects

Nebraska 4-H Robotics and GPS/GIS and SPIRIT Robotics Projects Name: Club or School: Robots Knowledge Survey (Pre) Multiple Choice: For each of the following questions, circle the letter of the answer that best answers the question. 1. A robot must be in order to

More information

A - Debris on the Track

A - Debris on the Track A - Debris on the Track Rocks have fallen onto the line for the robot to follow, blocking its path. We need to make the program clever enough to not get stuck! Step 1 2017 courses.techcamp.org.uk/ Page

More information

ECE2049: Foundations of Embedded Systems Lab Exercise #1 C Term 2018 Implementing a Black Jack game

ECE2049: Foundations of Embedded Systems Lab Exercise #1 C Term 2018 Implementing a Black Jack game ECE2049: Foundations of Embedded Systems Lab Exercise #1 C Term 2018 Implementing a Black Jack game Card games were some of the very first applications implemented for personal computers. Even today, most

More information

Robotics Workshop. for Parents and Teachers. September 27, 2014 Wichita State University College of Engineering. Karen Reynolds

Robotics Workshop. for Parents and Teachers. September 27, 2014 Wichita State University College of Engineering. Karen Reynolds Robotics Workshop for Parents and Teachers September 27, 2014 Wichita State University College of Engineering Steve Smith Christa McAuliffe Academy ssmith3@usd259.net Karen Reynolds Wichita State University

More information

Lab 1: Steady State Error and Step Response MAE 433, Spring 2012

Lab 1: Steady State Error and Step Response MAE 433, Spring 2012 Lab 1: Steady State Error and Step Response MAE 433, Spring 2012 Instructors: Prof. Rowley, Prof. Littman AIs: Brandt Belson, Jonathan Tu Technical staff: Jonathan Prévost Princeton University Feb. 14-17,

More information

TF Electronics Throttle Controller

TF Electronics Throttle Controller TF Electronics Throttle Controller Software Installation: Double click on TFEsetup.exe file to start installation. After installation there will be a shortcut on your desktop. Connecting the USB cable

More information

CSC C85 Embedded Systems Project # 1 Robot Localization

CSC C85 Embedded Systems Project # 1 Robot Localization 1 The goal of this project is to apply the ideas we have discussed in lecture to a real-world robot localization task. You will be working with Lego NXT robots, and you will have to find ways to work around

More information

LDOR: Laser Directed Object Retrieving Robot. Final Report

LDOR: Laser Directed Object Retrieving Robot. Final Report University of Florida Department of Electrical and Computer Engineering EEL 5666 Intelligent Machines Design Laboratory LDOR: Laser Directed Object Retrieving Robot Final Report 4/22/08 Mike Arms TA: Mike

More information

How Do You Make a Program Wait?

How Do You Make a Program Wait? How Do You Make a Program Wait? How Do You Make a Program Wait? Pre-Quiz 1. What is an algorithm? 2. Can you think of a reason why it might be inconvenient to program your robot to always go a precise

More information

Intro to Intelligent Robotics EXAM Spring 2008, Page 1 of 9

Intro to Intelligent Robotics EXAM Spring 2008, Page 1 of 9 Intro to Intelligent Robotics EXAM Spring 2008, Page 1 of 9 Student Name: Student ID # UOSA Statement of Academic Integrity On my honor I affirm that I have neither given nor received inappropriate aid

More information

Equipment and materials from stockroom:! DC Permanent-magnet Motor (If you can, get the same motor you used last time.)! Dual Power Amp!

Equipment and materials from stockroom:! DC Permanent-magnet Motor (If you can, get the same motor you used last time.)! Dual Power Amp! University of Utah Electrical & Computer Engineering Department ECE 3510 Lab 5b Position Control Using a Proportional - Integral - Differential (PID) Controller Note: Bring the lab-2 handout to use as

More information

Hybrid architectures. IAR Lecture 6 Barbara Webb

Hybrid architectures. IAR Lecture 6 Barbara Webb Hybrid architectures IAR Lecture 6 Barbara Webb Behaviour Based: Conclusions But arbitrary and difficult to design emergent behaviour for a given task. Architectures do not impose strong constraints Options?

More information

CSE 3215 Embedded Systems Laboratory Lab 5 Digital Control System

CSE 3215 Embedded Systems Laboratory Lab 5 Digital Control System Introduction CSE 3215 Embedded Systems Laboratory Lab 5 Digital Control System The purpose of this lab is to introduce you to digital control systems. The most basic function of a control system is to

More information

Lab book. Exploring Robotics (CORC3303)

Lab book. Exploring Robotics (CORC3303) Lab book Exploring Robotics (CORC3303) Dept of Computer and Information Science Brooklyn College of the City University of New York updated: Fall 2011 / Professor Elizabeth Sklar UNIT A Lab, part 1 : Robot

More information

Today s Menu. Near Infrared Sensors

Today s Menu. Near Infrared Sensors Today s Menu Near Infrared Sensors CdS Cells Programming Simple Behaviors 1 Near-Infrared Sensors Infrared (IR) Sensors > Near-infrared proximity sensors are called IRs for short. These devices are insensitive

More information

Relationship to theory: This activity involves the motion of bodies under constant velocity.

Relationship to theory: This activity involves the motion of bodies under constant velocity. UNIFORM MOTION Lab format: this lab is a remote lab activity Relationship to theory: This activity involves the motion of bodies under constant velocity. LEARNING OBJECTIVES Read and understand these instructions

More information

GE420 Laboratory Assignment 8 Positioning Control of a Motor Using PD, PID, and Hybrid Control

GE420 Laboratory Assignment 8 Positioning Control of a Motor Using PD, PID, and Hybrid Control GE420 Laboratory Assignment 8 Positioning Control of a Motor Using PD, PID, and Hybrid Control Goals for this Lab Assignment: 1. Design a PD discrete control algorithm to allow the closed-loop combination

More information

EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE

EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE LABORATORY 7: IR SENSORS AND DISTANCE DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING UNIVERSITY OF NEVADA, LAS VEGAS GOAL: This section will introduce

More information

CSCI 4190 Introduction to Robotic Algorithms, Spring 2003 Lab 1: out Thursday January 16, to be completed by Thursday January 30

CSCI 4190 Introduction to Robotic Algorithms, Spring 2003 Lab 1: out Thursday January 16, to be completed by Thursday January 30 CSCI 4190 Introduction to Robotic Algorithms, Spring 2003 Lab 1: out Thursday January 16, to be completed by Thursday January 30 Following a path For this lab, you will learn the basic procedures for using

More information

Experiment P02: Understanding Motion II Velocity and Time (Motion Sensor)

Experiment P02: Understanding Motion II Velocity and Time (Motion Sensor) PASCO scientific Physics Lab Manual: P02-1 Experiment P02: Understanding Motion II Velocity and Time (Motion Sensor) Concept Time SW Interface Macintosh file Windows file linear motion 30 m 500 or 700

More information

*Contest and Rules Adapted and/or cited from the 2007 Trinity College Home Firefighting Robot Contest

*Contest and Rules Adapted and/or cited from the 2007 Trinity College Home Firefighting Robot Contest Firefighting Mobile Robot Contest (R&D Project)* ITEC 467, Mobile Robotics Dr. John Wright Department of Applied Engineering, Safety & Technology Millersville University *Contest and Rules Adapted and/or

More information

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative ECE 477 Digital Systems Senior Design Project Rev 8/09 Homework 5: Theory of Operation and Hardware Design Narrative Team Code Name: _ATV Group No. 3 Team Member Completing This Homework: Sebastian Hening

More information

TC LV-Series Temperature Controllers V1.01

TC LV-Series Temperature Controllers V1.01 TC LV-Series Temperature Controllers V1.01 Electron Dynamics Ltd, Kingsbury House, Kingsbury Road, Bevois Valley, Southampton, SO14 OJT Tel: +44 (0) 2380 480 800 Fax: +44 (0) 2380 480 801 e-mail support@electrondynamics.co.uk

More information

Laboratory 1: Motion in One Dimension

Laboratory 1: Motion in One Dimension Phys 131L Spring 2018 Laboratory 1: Motion in One Dimension Classical physics describes the motion of objects with the fundamental goal of tracking the position of an object as time passes. The simplest

More information

GROUP BEHAVIOR IN MOBILE AUTONOMOUS AGENTS. Bruce Turner Intelligent Machine Design Lab Summer 1999

GROUP BEHAVIOR IN MOBILE AUTONOMOUS AGENTS. Bruce Turner Intelligent Machine Design Lab Summer 1999 GROUP BEHAVIOR IN MOBILE AUTONOMOUS AGENTS Bruce Turner Intelligent Machine Design Lab Summer 1999 1 Introduction: In the natural world, some types of insects live in social communities that seem to be

More information

Programming Project 2

Programming Project 2 Programming Project 2 Design Due: 30 April, in class Program Due: 9 May, 4pm (late days cannot be used on either part) Handout 13 CSCI 134: Spring, 2008 23 April Space Invaders Space Invaders has a long

More information

Distributed Intelligence in Autonomous Robotics. Assignment #1 Out: Thursday, January 16, 2003 Due: Tuesday, January 28, 2003

Distributed Intelligence in Autonomous Robotics. Assignment #1 Out: Thursday, January 16, 2003 Due: Tuesday, January 28, 2003 Distributed Intelligence in Autonomous Robotics Assignment #1 Out: Thursday, January 16, 2003 Due: Tuesday, January 28, 2003 The purpose of this assignment is to build familiarity with the Nomad200 robotic

More information

Medb ot. Medbot. Learn about robot behaviors as you transport medicine in a hospital with Medbot!

Medb ot. Medbot. Learn about robot behaviors as you transport medicine in a hospital with Medbot! Medb ot Medbot Learn about robot behaviors as you transport medicine in a hospital with Medbot! Seek Discover new hands-on builds and programming opportunities to further your understanding of a subject

More information

The Discussion of this exercise covers the following points: Angular position control block diagram and fundamentals. Power amplifier 0.

The Discussion of this exercise covers the following points: Angular position control block diagram and fundamentals. Power amplifier 0. Exercise 6 Motor Shaft Angular Position Control EXERCISE OBJECTIVE When you have completed this exercise, you will be able to associate the pulses generated by a position sensing incremental encoder with

More information

Lab 1: Testing and Measurement on the r-one

Lab 1: Testing and Measurement on the r-one Lab 1: Testing and Measurement on the r-one Note: This lab is not graded. However, we will discuss the results in class, and think just how embarrassing it will be for me to call on you and you don t have

More information

Vision Ques t. Vision Quest. Use the Vision Sensor to drive your robot in Vision Quest!

Vision Ques t. Vision Quest. Use the Vision Sensor to drive your robot in Vision Quest! Vision Ques t Vision Quest Use the Vision Sensor to drive your robot in Vision Quest! Seek Discover new hands-on builds and programming opportunities to further your understanding of a subject matter.

More information

Software User Manual

Software User Manual Software User Manual ElectroCraft CompletePower Plus Universal Servo Drive ElectroCraft Document Number: 198-0000021 2 Marin Way, Suite 3 Stratham, NH 03885-2578 www.electrocraft.com ElectroCraft 2018

More information

Quick Start Guide for the PULSE PROFILING APPLICATION

Quick Start Guide for the PULSE PROFILING APPLICATION Quick Start Guide for the PULSE PROFILING APPLICATION MODEL LB480A Revision: Preliminary 02/05/09 1 1. Introduction This document provides information to install and quickly start using your PowerSensor+.

More information

Tarocco Closed Loop Motor Controller

Tarocco Closed Loop Motor Controller Contents Safety Information... 3 Overview... 4 Features... 4 SoC for Closed Loop Control... 4 Gate Driver... 5 MOSFETs in H Bridge Configuration... 5 Device Characteristics... 6 Installation... 7 Motor

More information

Week Lesson Assignment SD Technology Standards. SPA Handout. Handouts. Handouts/quiz. Video/handout. Handout. Video, handout.

Week Lesson Assignment SD Technology Standards. SPA Handout. Handouts. Handouts/quiz. Video/handout. Handout. Video, handout. Week Lesson Assignment SD Technology Standards 1 Lesson 1: Intro to Robotics class Discuss goals of class & definition of a robot SPA Define engineering, programming and system. Define managing a project.

More information

Machine Intelligence Laboratory

Machine Intelligence Laboratory Introduction Robot Control There is a nice review of the issues in robot control in the 6270 Manual Robots get stuck against obstacles, walls and other robots. Why? Is it mechanical or electronic or sensor

More information

Robot Programming Manual

Robot Programming Manual 2 T Program Robot Programming Manual Two sensor, line-following robot design using the LEGO NXT Mindstorm kit. The RoboRAVE International is an annual robotics competition held in Albuquerque, New Mexico,

More information

ArbStudio Triggers. Using Both Input & Output Trigger With ArbStudio APPLICATION BRIEF LAB912

ArbStudio Triggers. Using Both Input & Output Trigger With ArbStudio APPLICATION BRIEF LAB912 ArbStudio Triggers Using Both Input & Output Trigger With ArbStudio APPLICATION BRIEF LAB912 January 26, 2012 Summary ArbStudio has provision for outputting triggers synchronous with the output waveforms

More information

The light sensor, rotation sensor, and motors may all be monitored using the view function on the RCX.

The light sensor, rotation sensor, and motors may all be monitored using the view function on the RCX. Review the following material on sensors. Discuss how you might use each of these sensors. When you have completed reading through this material, build a robot of your choosing that has 2 motors (connected

More information

Your EdVenture into Robotics 10 Lesson plans

Your EdVenture into Robotics 10 Lesson plans Your EdVenture into Robotics 10 Lesson plans Activity sheets and Worksheets Find Edison Robot @ Search: Edison Robot Call 800.962.4463 or email custserv@ Lesson 1 Worksheet 1.1 Meet Edison Edison is a

More information

The CO2 Sensor Calibration Kit

The CO2 Sensor Calibration Kit The CO2 Sensor Kit For use with all BAPI CO 2 Sensors Instruction Manual CO 2 Kit Product Identification and Overview BAPI s CO 2 Sensor Kit is designed to calibrate and verify the operation of all BAPI

More information

Roborodentia Robot: Tektronix. Sean Yap Advisor: John Seng California Polytechnic State University, San Luis Obispo June 8th, 2016

Roborodentia Robot: Tektronix. Sean Yap Advisor: John Seng California Polytechnic State University, San Luis Obispo June 8th, 2016 Roborodentia Robot: Tektronix Sean Yap Advisor: John Seng California Polytechnic State University, San Luis Obispo June 8th, 2016 Table of Contents Introduction... 2 Problem Statement... 2 Software...

More information

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT Brandon J. Patton Instructors: Drs. Antonio Arroyo and Eric Schwartz

More information

ECE 5670/6670 Project. Brushless DC Motor Control with 6-Step Commutation. Objectives

ECE 5670/6670 Project. Brushless DC Motor Control with 6-Step Commutation. Objectives ECE 5670/6670 Project Brushless DC Motor Control with 6-Step Commutation Objectives The objective of the project is to build a circuit for 6-step commutation of a brushless DC motor and to implement control

More information

ADVANCED ENERGY VEHICLE DESIGN PROJECT. AEV Lab Guidelines

ADVANCED ENERGY VEHICLE DESIGN PROJECT. AEV Lab Guidelines THE OHIO STATE UNIVERSITY ENGINEERING EDUCATION INNOVATION CENTER 2 Hitchcock Hall, 27 Neil Avenue, Columbus, OH 21 First-Year Engineering Program: ADVANCED ENERGY VEHICLE DESIGN PROJECT AEV Rev. 8221

More information

muse Capstone Course: Wireless Sensor Networks

muse Capstone Course: Wireless Sensor Networks muse Capstone Course: Wireless Sensor Networks Experiment for WCC: Channel and Antenna Characterization Objectives 1. Get familiar with the TI CC2500 single-chip transceiver. 2. Learn how the MSP430 MCU

More information

MicroLab 500-series Getting Started

MicroLab 500-series Getting Started MicroLab 500-series Getting Started 2 Contents CHAPTER 1: Getting Started Connecting the Hardware....6 Installing the USB driver......6 Installing the Software.....8 Starting a new Experiment...8 CHAPTER

More information

Chapter 14. using data wires

Chapter 14. using data wires Chapter 14. using data wires In this fifth part of the book, you ll learn how to use data wires (this chapter), Data Operations blocks (Chapter 15), and variables (Chapter 16) to create more advanced programs

More information

Closed-Loop Transportation Simulation. Outlines

Closed-Loop Transportation Simulation. Outlines Closed-Loop Transportation Simulation Deyang Zhao Mentor: Unnati Ojha PI: Dr. Mo-Yuen Chow Aug. 4, 2010 Outlines 1 Project Backgrounds 2 Objectives 3 Hardware & Software 4 5 Conclusions 1 Project Background

More information

Context-Aware Planning and Verification

Context-Aware Planning and Verification 7 CHAPTER This chapter describes a number of tools and configurations that can be used to enhance the location accuracy of elements (clients, tags, rogue clients, and rogue access points) within an indoor

More information

Magnetic Levitation System

Magnetic Levitation System Introduction Magnetic Levitation System There are two experiments in this lab. The first experiment studies system nonlinear characteristics, and the second experiment studies system dynamic characteristics

More information

BEI Device Interface User Manual Birger Engineering, Inc.

BEI Device Interface User Manual Birger Engineering, Inc. BEI Device Interface User Manual 2015 Birger Engineering, Inc. Manual Rev 1.0 3/20/15 Birger Engineering, Inc. 38 Chauncy St #1101 Boston, MA 02111 http://www.birger.com 2 1 Table of Contents 1 Table of

More information

A New Simulator for Botball Robots

A New Simulator for Botball Robots A New Simulator for Botball Robots Stephen Carlson Montgomery Blair High School (Lockheed Martin Exploring Post 10-0162) 1 Introduction A New Simulator for Botball Robots Simulation is important when designing

More information

FLIR Tools for PC 7/21/2016

FLIR Tools for PC 7/21/2016 FLIR Tools for PC 7/21/2016 1 2 Tools+ is an upgrade that adds the ability to create Microsoft Word templates and reports, create radiometric panorama images, and record sequences from compatible USB and

More information

AC : MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY

AC : MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY AC 2007-2528: MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY Michael Parten, Texas Tech University Michael Giesselmann, Texas Tech University American Society for

More information

Lab 8: Introduction to the e-puck Robot

Lab 8: Introduction to the e-puck Robot Lab 8: Introduction to the e-puck Robot This laboratory requires the following equipment: C development tools (gcc, make, etc.) C30 programming tools for the e-puck robot The development tree which is

More information

Servo Tuning Tutorial

Servo Tuning Tutorial Servo Tuning Tutorial 1 Presentation Outline Introduction Servo system defined Why does a servo system need to be tuned Trajectory generator and velocity profiles The PID Filter Proportional gain Derivative

More information

Sensor Calibration Lab

Sensor Calibration Lab Sensor Calibration Lab The lab is organized with an introductory background on calibration and the LED speed sensors. This is followed by three sections describing the three calibration techniques which

More information

Practical Assignment 1: Arduino interface with Simulink

Practical Assignment 1: Arduino interface with Simulink !! Department of Electrical Engineering Indian Institute of Technology Dharwad EE 303: Control Systems Practical Assignment - 1 Adapted from Take Home Labs, Oklahoma State University Practical Assignment

More information

Gentec-EO USA. T-RAD-USB Users Manual. T-Rad-USB Operating Instructions /15/2010 Page 1 of 24

Gentec-EO USA. T-RAD-USB Users Manual. T-Rad-USB Operating Instructions /15/2010 Page 1 of 24 Gentec-EO USA T-RAD-USB Users Manual Gentec-EO USA 5825 Jean Road Center Lake Oswego, Oregon, 97035 503-697-1870 voice 503-697-0633 fax 121-201795 11/15/2010 Page 1 of 24 System Overview Welcome to the

More information

Experiment P01: Understanding Motion I Distance and Time (Motion Sensor)

Experiment P01: Understanding Motion I Distance and Time (Motion Sensor) PASCO scientific Physics Lab Manual: P01-1 Experiment P01: Understanding Motion I Distance and Time (Motion Sensor) Concept Time SW Interface Macintosh file Windows file linear motion 30 m 500 or 700 P01

More information

DC CIRCUITS AND OHM'S LAW

DC CIRCUITS AND OHM'S LAW July 15, 2008 DC Circuits and Ohm s Law 1 Name Date Partners DC CIRCUITS AND OHM'S LAW AMPS - VOLTS OBJECTIVES OVERVIEW To learn to apply the concept of potential difference (voltage) to explain the action

More information

Implement a Robot for the Trinity College Fire Fighting Robot Competition.

Implement a Robot for the Trinity College Fire Fighting Robot Competition. Alan Kilian Fall 2011 Implement a Robot for the Trinity College Fire Fighting Robot Competition. Page 1 Introduction: The successful completion of an individualized degree in Mechatronics requires an understanding

More information

NATIONAL UNIVERSITY OF SINGAPORE. EE3302/EE3302E Industrial Control Systems. E2: PLC Programming for Sequence Control

NATIONAL UNIVERSITY OF SINGAPORE. EE3302/EE3302E Industrial Control Systems. E2: PLC Programming for Sequence Control NATIONAL UNIVERSITY OF SINGAPORE EE3302/EE3302E Industrial Control Systems E2: 1. Objectives The experiment is designed to provide experience in programming a modern IECcompliant PLC system for sequence

More information

ArcGIS Tutorial: Geocoding Addresses

ArcGIS Tutorial: Geocoding Addresses U ArcGIS Tutorial: Geocoding Addresses Introduction Address data can be applied to a variety of research questions using GIS. Once imported into a GIS, you can spatially display the address locations and

More information

Robotic Systems Challenge 2013

Robotic Systems Challenge 2013 Robotic Systems Challenge 2013 An engineering challenge for students in grades 6 12 April 27, 2013 Charles Commons Conference Center JHU Homewood Campus Sponsored by: Johns Hopkins University Laboratory

More information

Servo Indexer Reference Guide

Servo Indexer Reference Guide Servo Indexer Reference Guide Generation 2 - Released 1/08 Table of Contents General Description...... 3 Installation...... 4 Getting Started (Quick Start)....... 5 Jog Functions..... 8 Home Utilities......

More information

Robot Control. Robot Control

Robot Control. Robot Control Robot Control Introduction There is a nice review of the issues in robot control in the 6270 Manual Robots get stuck against obstacles, walls and other robots. Why? Is it mechanical or electronic or sensor

More information

DXXX Series Servo Programming...9 Introduction...9 Connections HSB-9XXX Series Servo Programming...19 Introduction...19 Connections...

DXXX Series Servo Programming...9 Introduction...9 Connections HSB-9XXX Series Servo Programming...19 Introduction...19 Connections... DPC-11 Operation Manual Table of Contents Section 1 Introduction...2 Section 2 Installation...4 Software Installation...4 Driver Installastion...7 Section 3 Operation...9 D Series Servo Programming...9

More information

Design Project Introduction DE2-based SecurityBot

Design Project Introduction DE2-based SecurityBot Design Project Introduction DE2-based SecurityBot ECE2031 Fall 2017 1 Design Project Motivation ECE 2031 includes the sophomore-level team design experience You are developing a useful set of tools eventually

More information

Rochester Institute of Technology Real Time and Embedded Systems: Project 2a

Rochester Institute of Technology Real Time and Embedded Systems: Project 2a Rochester Institute of Technology Real Time and Embedded Systems: Project 2a Overview: Design and implement a STM32 Discovery board program exhibiting multitasking characteristics in simultaneously controlling

More information

Introduction to NeuroScript MovAlyzeR Handwriting Movement Software (Draft 14 August 2015)

Introduction to NeuroScript MovAlyzeR Handwriting Movement Software (Draft 14 August 2015) Introduction to NeuroScript MovAlyzeR Page 1 of 20 Introduction to NeuroScript MovAlyzeR Handwriting Movement Software (Draft 14 August 2015) Our mission: Facilitate discoveries and applications with handwriting

More information

EE 4314 Lab 3 Handout Speed Control of the DC Motor System Using a PID Controller Fall Lab Information

EE 4314 Lab 3 Handout Speed Control of the DC Motor System Using a PID Controller Fall Lab Information EE 4314 Lab 3 Handout Speed Control of the DC Motor System Using a PID Controller Fall 2012 IMPORTANT: This handout is common for all workbenches. 1. Lab Information a) Date, Time, Location, and Report

More information

Mini Hexapodinno. 18-DOF Robot

Mini Hexapodinno. 18-DOF Robot Mini Hexapodinno 18-DOF Robot Instruction Manual Version 1.11 Trademark Innovati,, and BASIC Commander, are registered trademarks of Innovati Inc. InnoBASIC and cmdbus are trademarks of Innovati Inc. Copyright

More information

1 Lab + Hwk 4: Introduction to the e-puck Robot

1 Lab + Hwk 4: Introduction to the e-puck Robot 1 Lab + Hwk 4: Introduction to the e-puck Robot This laboratory requires the following: (The development tools are already installed on the DISAL virtual machine (Ubuntu Linux) in GR B0 01): C development

More information

Physics 253 Fundamental Physics Mechanic, September 9, Lab #2 Plotting with Excel: The Air Slide

Physics 253 Fundamental Physics Mechanic, September 9, Lab #2 Plotting with Excel: The Air Slide 1 NORTHERN ILLINOIS UNIVERSITY PHYSICS DEPARTMENT Physics 253 Fundamental Physics Mechanic, September 9, 2010 Lab #2 Plotting with Excel: The Air Slide Lab Write-up Due: Thurs., September 16, 2010 Place

More information

Andrew Kobyljanec. Intelligent Machine Design Lab EEL 5666C January 31, ffitibot. Gra. raffiti. Formal Report

Andrew Kobyljanec. Intelligent Machine Design Lab EEL 5666C January 31, ffitibot. Gra. raffiti. Formal Report Andrew Kobyljanec Intelligent Machine Design Lab EEL 5666C January 31, 2008 Gra raffiti ffitibot Formal Report Table of Contents Opening... 3 Abstract... 3 Introduction... 4 Main Body... 5 Integrated System...

More information

Inspiring Creative Fun Ysbrydoledig Creadigol Hwyl. Kinect2Scratch Workbook

Inspiring Creative Fun Ysbrydoledig Creadigol Hwyl. Kinect2Scratch Workbook Inspiring Creative Fun Ysbrydoledig Creadigol Hwyl Workbook Scratch is a drag and drop programming environment created by MIT. It contains colour coordinated code blocks that allow a user to build up instructions

More information

KUKA.SeamTech Tracking 2.0

KUKA.SeamTech Tracking 2.0 KUKA System Technology KUKA Roboter GmbH KUKA.SeamTech Tracking 2.0 For KUKA System Software 8.2 Issued: 04.09.2013 Version: KST SeamTech Tracking 2.0 V2 Copyright 2013 KUKA Roboter GmbH Zugspitzstraße

More information

TOSHIBA MACHINE CO., LTD.

TOSHIBA MACHINE CO., LTD. User s Manual Product SHAN5 Version 1.12 (V Series Servo Amplifier PC Tool) Model SFV02 July2005 TOSHIBA MACHINE CO., LTD. Introduction This document describes the operation and installation methods of

More information

L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G

L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G P R O F. S L A C K L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G G B S E E E @ R I T. E D U B L D I N G 9, O F F I C E 0 9-3 1 8 9 ( 5 8 5 ) 4 7 5-5 1 0

More information

Endurance R/C Wi-Fi Servo Controller 2 Instructions

Endurance R/C Wi-Fi Servo Controller 2 Instructions Endurance R/C Wi-Fi Servo Controller 2 Instructions The Endurance R/C Wi-Fi Servo Controller 2 allows you to control up to eight hobby servos, R/C relays, light controllers and more, across the internet

More information

Workshops Elisava Introduction to programming and electronics (Scratch & Arduino)

Workshops Elisava Introduction to programming and electronics (Scratch & Arduino) Workshops Elisava 2011 Introduction to programming and electronics (Scratch & Arduino) What is programming? Make an algorithm to do something in a specific language programming. Algorithm: a procedure

More information