For this week and last week, I have worked on the three main behaviors for the robotic arm and tuning them. The three main behaviors are handling raw meats, flipping half-cooked meats, and handling done meats. Since those three functions can work for one piece of meat, I have created the part of the software controller and integration where these events can be put into a queue system. We will soon test on a real grill and meats. I will also have to take videos of each action for the video. I also ordered a DC power supply that can turn an AC input into a DC input of 12 V and a maximum of 20 A. This will help to provide the robot with a consistent current draw and avoid electronics from browning out. I have also presented the final presentation, which I think went pretty smoothly.
Joseph Jang’s Status Report for 4/2
This week, I was able to hardcode some movements for the robotic arm. I am using the I have taken the measurements of the robotic arm, so I have put it in the Matlab code. First I had to specify the Rigid Body Tree Model. I could modify the model by using the addBody. Finally, I used the inverseKinematics function to try to have the robot arm moving. I’ve tried two different IK models, which are called BFGSGradientProjection and LevenbergMarquardt. However, since there are multiple solutions that are possible for an (x, y, z) position, the angles of each joint of the robotic arm need to be specified somehow. We have to choose the right arm joints by making sure the robot arm links are not close to the grill. Although the picture below is not a picture of the robotic arm I’m using, it is the GUI that I am using to control the robotic arm.
Joseph Jang’s Status Report for 3/26
This week, I was able to set up the Jetson Agx Xavier. I have started reviewing the inverse kinematics for the robotic arm. I am going through the tutorials for using Python with ROS to get a better understanding of robot simulation. I am also looking through the lecture notes of the robotics course 16-384 called Robot Kinematics and Dynamics. There are many resources available, but I am currently leaning towards using a MATLAB & Simulink library called Robotic Systems Toolbox. I have started playing around with the IK solver algorithms and simulation model for the end effector of the robotic arm. I am having some trouble understanding all the math behind a 4-DOF robotic arm. I think I will eventually get there, but for now, I will simulate the robotic arm.
Joseph Jang’s Status Report for 3/19
I have made a good amount of progress on the robotic arm subsystem. With the 3D printed links and wooden base I created before the start of the break, the electrical parts our team borrowed from the inventory, and the electrical parts and motors I already owned, I was able to complete about 80% of both the electrical subsystem and the mechanical parts of the robotic arm during spring break. Below are pictures of that progress. With the arrival of most parts on Monday, I was able to complete and test the electrical subsystem on Monday and completed the mechanics and heat-proofing of the robotic arm on Tuesday. Below are pictures of the completed electrical subsystem and robotic arm.
During the rest of the week, I configured the Jetson AGX Xavier and set up the software environment. I programmed the 5 servo motors to properly turn with certain inputs, and I was also able to program the stepper motor to turn properly at the appropriate speed and direction. Below is a video of that. I will now have to work on the computer vision for the robotic arm using the camera that we bought. My plan is to now work on and complete the inverse kinematics software in two weeks at the earliest, and three weeks at the latest (which will take up one week in April). I am at a good pace to complete the robotic arm subsystem before integration.
Joseph Jang’s Status Report for 2/25
The schedule has been tighter than expected for me, so the robotic arm development has been tough. However, I have already 3D printed the 1st and 3rd links of the Robotic Arm. It has some small size defects, so I have adjusted the CAD model and will attempt to reprint them this Sunday. Also, I have submitted the 3D printing of link 2 to FBS so that a larger printer can be used to 3D print the part. I am hoping that the parts I have ordered will come in soon before spring break starts so that I could bring the robot parts on the plane back with me and assemble them at home. Fabrication of the robotic arm should not take more than a total of 24 hours if no issues occur.
I have also started working on the design report, and hope to have it finished by the deadline. I have planned a way for us to separate the work for the report. We will each write parts of the report that we have made slides for in the presentation, plus some additional topics that need to go in the report, such as design studies. We will include all the diagrams and a couple of additional tables and pictures in our design report as well as touch upon the fabrication and assembly process of our robotic system. We will also discuss more on integration in our report, which we have all started planning.
As suggested during our design presentation, I have also looked more into how to use the available ROS libraries to implement inverse kinematics for a 4DOF complex robot such as the one I will be making. I am reviewing the math for inverse kinematics, and have looked into ROS tutorials for IKFast Kinematic Solver. My plan is to fully delve into developing the inverse kinematics software during spring break, where hopefully I will have most if not all of the robot arm assembled.
Joseph Jang’s Status Report for 2/19
Most of this week was spent creating and finalizing our design decisions. I spent my time creating the System Architecture, System States, and Electrical System Diagrams. The CAD models of our 3 robotic links were also created by me. I also created a parts list of everything that our team currently owns, borrowed, or needs to buy. I will start submitting parts for order next week after our design is reviewed through our presentation. I have also updated the Gantt Chart to show our progression and add more slack. All these diagrams and documents are crucial for the design presentation, design report, and the next stage of development. The creation of all these diagrams helped me consolidate design choices. This was a particularly busy week for me as I had to complete most of the robotic arm design for the presentation. I expect that next week will be more relaxed as I start creating the report and finalizing any design questions. Here are the pics of what I have worked on this week. Please look at our Design presentation slides for better quality pics.
Joseph Jang’s Status Report for 2/12
For this week, I looked into the design of robotic arms. I looked into the different types of robotic joints that can be used. I will use a stepper motor for the base joint of the robot, and then use 3 servo motors, which I am still deciding between the torque of two different motors – the MG996R servo (10 kg-cm) versus the Zoskay servo (35 kg-cm). While the Zoskay is most definitely overkill and expensive, I am curious if the weight it can handle and I also have never used it. However, there are probably MG996R servo motors that we can borrow as a team, so it would help us save our budget. I also ordered parts from the ECE 500 Inventory and picked them up, which are the NEMA 17 Stepper Motor, DM542T Stepper Driver, and 2 cameras for the Jetson AGX Xavier (ARDUCAM UC-698 REV. B and e-CAM50_CUNX/NANO) I also requested a blue crate from Techspark. I have read over the next Design assignment guidance to help assign tasks for the upcoming design presentation. We hope to review the system architecture with a faculty member ASAP. But by Friday of next week, I hope to have the basic design of each major subsystem down (the robotic arm, CV algorithm, UI, and software controller), and the necessary block diagrams completed and ready to be reviewed as a team. We will have to solidify our use case quantitative requirements, implementation plan, risk factors, metrics and validation, and system architecture. We will also have to configure all of our electronics (Jetson AGX Xavier and the 2 cameras) in the upcoming week.