Jack’s Status Report for 2/25/2023

  • Week recap
    • Jetson Xavier AGX
      • Initially got ssh working on windows, but after system reset, failed to connect
      • Using Linux 20.04 + Refreshing the Jetson (and not updating any packages) seems to have alleviated the issues, but just in case we have requested the Xavier NX as a backup
    • Matlab
      • Connected Matlab to Jetson
      • Compiled test Matlab Script -> Cpp executable remotely onto Jetson
    • Helped setup roomba driving
  • Schedule
    • Again behind on LIDAR because of continuous issues with the Jetson
    • Will have to use Spring Break to make up one week of work
  • Deliverables
    • Create a Matlab -> Cpp executable that takes lidar scan data (angle + distance vectors) and creates a map object

Zach’s Status Report for 2/25/2023

  • Week recap
    • CAD models for the lift system
      • 3D print gears to get our desired torque output from the steppers (each stepper needs to lift 5lbs)
      • Initial version of complete, and will be submitted for fabrication on Monday (see image below)
      • Plan is to mount these between 1/4″ plywood panels that will make up the arms of our lift system
      • Decided on using cams fixed to large gear to lift bins for easy positioning
    • Roomba driving
      • Was having trouble getting it to enter serial communication mode
      • Potential default baud rate issue (115200 stated in documentation)
      • Using special boot procedure for reliable 19200 baud comms
      • Tethered driving with computer: Drive Code v0

  • Schedule
    • Slightly behind on CAD for docking system
      • Good trajectory this past week, which will be carried forward
      • Validate prototype gears and move to full version with cams (rapid progress here)
    • Getting more used to Solidworks again
    • George assisting with stepper motor control
    • Any redesign work can happen over spring break and use slack time for further testing
  • Deliverables next week
    • Working prototype of the pickup arms, with mount points for gears
    • Gear system validation
    • If gear testing is successful, make/print the next iteration with cams, otherwise make gearing changes to reach target lift capacity
    • May write code with a simpler interface for roomba driving, with more customization on motor speeds (dependent on other group member needs)

Team Status Report for 2/25/2023

The current risks and their associated mitigations are listed below:

  • Jetson Xavier AGX ethernet connection is unreliable. We’re attempting to reconfigure the computer but mitigation plan will be to switch to the Jetson Xavier Nx.
    • Last year’s team that worked with the Roomba used a Xavier Nx for their Project, and seemed to have less problems
  • Stepper motor gearboxes are quite expensive, and purchasing them would put us a bit too tight on budget. We’re looking at 3D printing gears instead to achieve a lift weight that meets design requirements. If this fails, another lift mechanism will have to be created.
  • SLAM/LIDAR: After reflashing the Jetson, it has successfully connected to Matlab. Some Matlab LIDAR api calls were built for the Jetson, but a full build has not been attempted with all possible api calls.  In case full build does not succeeded, will attempt ROS slam.

There have been no major project changes yet, but pending the success of 3D printed gears we may have to redesign the lift system. [Add anything else]

We haven’t changed our project schedule, but there has been more collaboration on different tasks than just 1-2 group members. Notably, all 3 of us worked together on the Roomba’s tethered driving. Task fill and assistance is listed below:

  • All 3 of us supported Roomba bringup
  • George will help Zach with stepper motor control
  • [Others?]

Project successes this week:

  • USB camera calibration and distance detection
  • Roomba drive control
  • Jetson reflashed
  • Matlab LIDAR: Jetson conected to Matlab, Matlab -> Cpp test build on Jetson succeeded.

[Drop in photos/links if we want]

George’s Status Report 2/25/2023

This week I

  • Wrote Camera Calibration code and tested it with camera intended for onboard use : https://github.com/gxgao/eceCapstone/commit/e2563776702df91df376e5ef2d20f3c5c5ad5150
  • Created code for pos estimation with calibrated camera: https://github.com/gxgao/eceCapstone/blob/master/video_aruco.py
  • Helped setting up tethered Roomba driving
  • Created bin identification class and interface
    • https://github.com/gxgao/eceCapstone/blob/master/binID.py
    • updated db interface to support such queries https://github.com/gxgao/eceCapstone/blob/master/dbInterface.py

Classes that I used: 18-202 and Intro to Robo (16-311)  for matrices and CV things

Schedule :

  • On schedule
  • Next week we plan to finish lidar setup and start path planning module. Will help Jack with slam lidar setup and bring up to schedule, and help set up stepper motors to bring hardware schedule back up.

Jack’s Status Report for 2/18/2023

  • What did I accomplish?:
    • Got LIDAR driver setup on development machine. Ran test application to make sure that the LIDAR was working properly.
    • Finalized and practiced for the design presentation.
    • Got ArUco tag identification working with George.
  • Am I on schedule?: Because I focused on the presentation and setting up the Jetson, which took longer than expected (still having trouble getting it to connect over ethernet), I am behind on LIDAR implementation. If its not possible to troubleshoot, I will just buy a usb network adapter instead of using ethernet.
  • What deliverables do I want to complete next week?:
    1. Compile MATLAB SLAM & Navigation Toolbox to the  Jetson.
    2. Get ArUco pose estimation working
  • Please list the particular ECE courses (if any) that covered the engineering science and mathematics principles your team used to develop your design?:
    1. 18-100: We the knowledge from 18-100 when calculating the required battery size our robot would need to meet our use case requirements.
    2. The knowledge required for ArUco tag identification came from outside of school learning.

Team Status Report for 2/18/2023

Risks: LIDAR data processing/path planning, attachment points to Roomba for compute package and docking system, and others maybe? Contingency: Pivot to other open source Lidar packages, or worst case pivot to overhead camera and network call procedure.  Docking mitigation is no bin lifting and wheels instead

Design changes: consolidate power system into 1 large battery pack, power USB devices through Jetson. Use Matlab for CV things, and convert to C.

Updated schedule: added more slack post-spring break for component design and test. Re-ordered LIDAR bring-up and path planning simulation.

Engineering principles: Worst-case analysis for power, Reliability for pickup mechanism, KISS for picking the SLAM libraries that we are using.

Documentation: Git history changes can be found https://github.com/gxgao/eceCapstone

 

 

George’s Status Report for 12/18/2023

Accomplishments

  • DataBase:
    • This week I finished setting up the db, and added the table we will be using for bin tracking with the schema designed last week: https://github.com/gxgao/eceCapstone/blob/master/binTracking.db
    • Added python high level interface to work with db, so that logic can be executed in code: https://github.com/gxgao/eceCapstone/blob/master/dbInterface.py
    • Will be building ontop functionality as needed
  • Data Capture:
    • Got arUCo image recognition to work on static images: https://github.com/gxgao/eceCapstone/blob/master/cv.py
    • Got arUCo image recongnition to work on video streams: https://github.com/gxgao/eceCapstone/blob/master/video_aruco.py
  • Path planning has been shuffled to be later to after lidar mapping inputs are complete

Schedule

  • Currently On Schedule
  • Next week hope to bring up roomba movement, and streamline data capture logic

Courses that helped:

  • I am currently taking 15-445 (databases) and it helped me design the schema for the database pretty well
  • For CV, 16-311 (Intro to Robotics) helped me look into computer vision schematics.

Zach’s Status Report for 2/18/2023

This week I spent most of the time gathering information on the power requirements of our design, and started considering mechanical design elements as well. For power I was originally planning to have separate buses at 2 or 3 different voltages, but decided to have a single 12V supply that powers both the Jetson and the stepper driver, and get power for the LIDAR and USB cameras via Jetson USB. I also ordered the stepper motors we’ll be using for the project, and explored a Roomba CAD model that I will design around.

Currently I’m slightly behind schedule on the mechanical bin design since I didn’t allocate time for developing the power system. With the Roomba acquired I’ll be much faster at designing the docking mechanism in CAD, so I plan to catch up this week. This isn’t a major issue since I have a week of slack built into the hardware development.

In the next week, I’m targeting having the bin attachment complete, and also having the Roomba attachment designed and possibly fabricated. I’ll need to ether leave room for or integrate the electronics mounts as a part of the docking mechanism.

Courses used for my design portion: 18-021, 18-100, 18-220, 24-104. The analysis for power was not too complex, but just had to reason through the ratings for our various components. Knowing how to use GPIO (Jetson) to drive larger items (steppers) came from non-work experience.

 

Zach’s Status Report for 2/11/2023

This week, I considered tradeoffs of various bin docking designs in concert with discussions on the robot navigation methods. At this point I’m leaning towards an omnidirectional mechanism since it makes the navigation easier, although the mechanical design is a bit more complex as a result.

I also helped put together an initial parts list and select components that we wanted from the ECE inventory.

Knowing that we weren’t going to have a lot of work time this week due to the proposal presentations, I didn’t schedule any significant tasks, so we are on schedule.

In the next week, my primary goal will be to design in CAD and hopefully fabricate the omnidirectional mechanism, as well as make changes if any are needed. If time allows, I may design in CAD an alternative mechanism that’s not omnidirectional in case our current idea fails to meet design requirements.

 

Jack’s Status Report for 2/11/2023

  • What did I accomplish?:
    • This week I have begun researching SLAM and related algorithms, specifically I am interested in combining lidar depth data with visual landmarks (April tags) to improve mapping.
    • Additionally, my group mates and I discussed the benefits/challenges of using a 360 deg. lidar system vs. a fixed lidar system. (It also may be possible to filter the 360 deg. lidar system?)
    • I helped fix our website to properly display weekly status report posts by category/team member.
  • Am I on schedule?: Yes, no direct tasks where assigned this week.
  • What deliverables do I want to complete next week?:
    1. If I get access to the roomba next week, I would like to have basic movement control when tethered to a PC complete.
    2. If I get access to the LIDAR camera early next week, I would like to attempt implementing SLAM using a premade library (Maybe MATLAB or slam_toolbox)
    3. If I get access to a camera, my goal is to implement local bin identification.