Shortened URL of this page: goo.gl/GPG8X9
Schedule
|
|
Week 1: June 18-22 -- Introduction/background
|
|
Week 2: June 25-29 -- Building
|
- Monday
- ROS joystick listener node called "bumbersnoot_boss" created
- Changed Jetson hostname to bumbersnoot
- Verified that new, long M2.5 screws fit into XL-320 servo horn
- Ordered micro-USB hub and correct power+data SATA cable for SSD (arrives Wednesday)
- Got Dynamixel XL-320 to move! Power switch was in wrong position? Should be to LEFT as you look at switch end of board. Got GUI and position control from here working; velocity control still no go
- Tuesday
- Figured out mapping of joystick buttons to their indices into buttons array
- Made some plans about modes and capabilities of training/testing program (written on whiteboard)
- Started integrating Dynamixel includes and package depends into listener program. Now callback is executed when dynamixel/XL message arrives.
- Assigned unique ID to each XL-320 using manager GUI: 10, 20, 30, 40. Now they all can be seen. multi_port was not the answer -- this is how you deal with multiple USB devices, not multiple servos on one USB controller
- Started integrating position controller example into bumbersnoot_boss
- Wednesday
- Basic velocity control of all servos in bumbersnoot_boss is working. 0-1023 maps to percent of max speed in CCW direction, 1024-2047 is same thing in CW direction. Make sure to set torque off before ending program
- Basic joystick control of servo velocities: all forward/backward proportional to left joystick up/down
- Ordered 5 x 190 mm cables for XL-320 -- current ones are 110 mm
- Thursday
- Buttons, logic for logging start/stop. Independent control of left and right side motors, check to ensure not spinning in place
- Attached micro-USB hub, verified that keyboard, mouse, and CM9.04C can be used through it. Plugged RealSense into main USB at the same time and it works
- Added 500 Gb SSD for mass storage, mounted at /data.
- To do:
- Adapt servos to big Lego tires
- Mount servos on rails/brackets.
- Integrate RealSense capture code into bumbersnoot_boss. Preview window?
- Logs with timestamps, directory creation
|
Week 3: July 2-6 -- Building
|
- To do:
- Continue working on chassis: how to mount Jetson, SSD, CM9.04C, batteries, and camera on it
- Ad hoc wifi to connect to Jetson. From phone...but Android does not support? Wi Fi direct? [1]. Video streaming?
- Jetson powered by battery: [2], [3]. Should definitely try the ones left over from DRC
- Imitation learning test from tripod-mounted camera
|
Week 4: July 9-13 -- Driving tests/data collection
|
|
Week 5: July 16-20 -- Teaching/learning
|
|
Week 6: July 23-27-- Teaching/learning
|
|
Week 7: July 30-August 3 -- Write-up and presentation prep
|
|
Miscellaneous topics
- Deep neural networks
- Unity, ML-Agents
- Reinforcement learning, imitation learning
- Dynamixels
- RealSense
- Jetson
- OpenCV
- TensorFlow
- Obstacle avoidance, motion planning
- Trail following, Warthog
- C++ vs. C# vs. Java
- Linux
Parts
On hand
- Jetson TX2 dev kit
- RealSense D435 depth camera
- 4-port USB hub
- Robotis
- 5 x XL-320 servo
- Dream 2 kit (includes small rubber wheels)
- 2 x Li-ion battery LB-041, 2 x charger LBB-041
- 3 x Li-ion battery LB-040 (one more back-ordered), 2 x charger LBB-040
- 2 x OpenCM9.04C controller board
- Monitor, HDMI cable
Needed
- Jetson
- SSD drive connector, mini-USB hub (arriving 6/26)
- Battery
- Enclosure