Difference between revisions of "Water Resistant Self Contained Mobile Robot Design"
From Lofaro Lab Wiki
(Created page with "TBD") |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | Due Date: 2019-05-08 | |
+ | |||
+ | The goal of this project is to extend your design for Project 2, [[Cloud Controlled Mobile Robot Design]], to be IP-68 compliment (see [https://en.wikipedia.org/wiki/IP_Code IP Rating here]). Other modifications and requirements are as follows: | ||
+ | * All capabilities from Project 2 must be built and must be useable without re-programming it | ||
+ | * The IP-68 design should be in <u>CAD ONLY</u>, again <u><b>ip-68 design is in CAD only and should NOT be printed out</b></u>. Please use your previous design for the integration. (feel free to change that design if needed). | ||
+ | * The connection between the SBC (the RPI) and the micro-controller should be a direct wifi link (i.e. the micro-controller is in AP mode). Do NOT use eduroam or another structured network such as a personal hotspot or router. | ||
+ | * The arrow keys should drive the robot around with the following attributes: | ||
+ | ** Up arrow: increase velocity (10 velocity increments from stop to max speed) | ||
+ | ** Down arrow: decrease velocity (10 velocity increments from stop to max reverse velocity) | ||
+ | ** Left Arrow: Changes the heading set-point by 15 degrees in the positive direction (i.e. CCW) | ||
+ | ** Right Arrow: Changes the heading set-point by 15 degrees in the negative direction (i.e. CW) | ||
+ | * The W-A-S-D keys should do the following: | ||
+ | ** W - have the robot turn to magnetic North | ||
+ | ** A - have the robot turn to magnetic West | ||
+ | ** S - have the robot turn to magnetic South | ||
+ | ** D - have the robot turn to magnetic East | ||
+ | ** Note: The robot should keep it's previous velocity set point as set from the arrow keys | ||
+ | * The space bar should stop the robot (i.e. set velocity to zero). | ||
+ | * All control should be closed loop | ||
+ | ** Wheel speed should be closed loop using the encoders | ||
+ | ** Heading should be closed loop using the compass or a combination of the compass and the encoders | ||
+ | * The robot should return its state (i.e. odometry location/orientation, IMU information, and compass orientation) in the following format: | ||
+ | ** It should be a <u>packed</u> c-type structure | ||
+ | ** It should be returned to the SBC at a rate of 10hz. | ||
+ | ** It should be returned to the SBC via UDP on port 4242. Note: this should be a different port than you are using to drive/command your robot with. | ||
+ | ** The order of the structure variables should be as follows with these exact name: | ||
+ | *** double odo[3] // 0 = x pos, 1 = y pos, and 2 = z pos | ||
+ | *** double imu[6] // 0 = ax, 1 = ay, 2 = az, 3 = mx, 4 = my, and 5 = mz where a = accelerator and m = magnetometer | ||
+ | *** double heading | ||
+ | *** Notes: | ||
+ | **** All position units should be in mm | ||
+ | **** All acceleration units should be in m/sec | ||
+ | **** All orientations should be in degrees | ||
+ | **** The magnetometer should be in degrees | ||
+ | * You should have a BASH installer and program as explained in class for the SBC portion of your project. | ||
+ | * Recommended (but not required): Pick an opensoruce license and apply it to your source and your installer | ||
+ | * Device and software should be clean and neat. You will be graded on looks/neatness/orderliness/etc. | ||
+ | * All specifications defined in Project 2, [[Cloud Controlled Mobile Robot Design]], should be followed unless specifically modified above. | ||
+ | |||
+ | |||
+ | To submit: | ||
+ | * Write up of your project | ||
+ | ** What you did | ||
+ | ** How you did it | ||
+ | ** Key points | ||
+ | ** Pictures of your designs | ||
+ | ** Pictures showing functionality of your work | ||
+ | ** Links to youtube videos of your device working | ||
+ | ** Github link | ||
+ | ** and all other normal items you normally submit. | ||
+ | ** Note: make sure I know that you know what you are doing | ||
+ | * Must be in IEEE-RAS Conference format | ||
+ | ** [http://ras.papercept.net/conferences/support/word.php Word Template] | ||
+ | ** [http://ras.papercept.net/conferences/support/tex.php Latex Template] | ||
+ | * Extra Credit: You will get extra credit if you do all of the following: | ||
+ | ** Write your document in Latex | ||
+ | ** Provide the archive of your entire latex project (must be able to be compiled) with the primary document named as <u>main.tex</u> | ||
+ | ** Include a one page background of odometry methods with a minimum of 5 IEEE citations | ||
+ | * Live demo to be given in class |
Latest revision as of 14:25, 2 May 2019
Due Date: 2019-05-08
The goal of this project is to extend your design for Project 2, Cloud Controlled Mobile Robot Design, to be IP-68 compliment (see IP Rating here). Other modifications and requirements are as follows:
- All capabilities from Project 2 must be built and must be useable without re-programming it
- The IP-68 design should be in CAD ONLY, again ip-68 design is in CAD only and should NOT be printed out. Please use your previous design for the integration. (feel free to change that design if needed).
- The connection between the SBC (the RPI) and the micro-controller should be a direct wifi link (i.e. the micro-controller is in AP mode). Do NOT use eduroam or another structured network such as a personal hotspot or router.
- The arrow keys should drive the robot around with the following attributes:
- Up arrow: increase velocity (10 velocity increments from stop to max speed)
- Down arrow: decrease velocity (10 velocity increments from stop to max reverse velocity)
- Left Arrow: Changes the heading set-point by 15 degrees in the positive direction (i.e. CCW)
- Right Arrow: Changes the heading set-point by 15 degrees in the negative direction (i.e. CW)
- The W-A-S-D keys should do the following:
- W - have the robot turn to magnetic North
- A - have the robot turn to magnetic West
- S - have the robot turn to magnetic South
- D - have the robot turn to magnetic East
- Note: The robot should keep it's previous velocity set point as set from the arrow keys
- The space bar should stop the robot (i.e. set velocity to zero).
- All control should be closed loop
- Wheel speed should be closed loop using the encoders
- Heading should be closed loop using the compass or a combination of the compass and the encoders
- The robot should return its state (i.e. odometry location/orientation, IMU information, and compass orientation) in the following format:
- It should be a packed c-type structure
- It should be returned to the SBC at a rate of 10hz.
- It should be returned to the SBC via UDP on port 4242. Note: this should be a different port than you are using to drive/command your robot with.
- The order of the structure variables should be as follows with these exact name:
- double odo[3] // 0 = x pos, 1 = y pos, and 2 = z pos
- double imu[6] // 0 = ax, 1 = ay, 2 = az, 3 = mx, 4 = my, and 5 = mz where a = accelerator and m = magnetometer
- double heading
- Notes:
- All position units should be in mm
- All acceleration units should be in m/sec
- All orientations should be in degrees
- The magnetometer should be in degrees
- You should have a BASH installer and program as explained in class for the SBC portion of your project.
- Recommended (but not required): Pick an opensoruce license and apply it to your source and your installer
- Device and software should be clean and neat. You will be graded on looks/neatness/orderliness/etc.
- All specifications defined in Project 2, Cloud Controlled Mobile Robot Design, should be followed unless specifically modified above.
To submit:
- Write up of your project
- What you did
- How you did it
- Key points
- Pictures of your designs
- Pictures showing functionality of your work
- Links to youtube videos of your device working
- Github link
- and all other normal items you normally submit.
- Note: make sure I know that you know what you are doing
- Must be in IEEE-RAS Conference format
- Extra Credit: You will get extra credit if you do all of the following:
- Write your document in Latex
- Provide the archive of your entire latex project (must be able to be compiled) with the primary document named as main.tex
- Include a one page background of odometry methods with a minimum of 5 IEEE citations
- Live demo to be given in class