Steven’s Status Report 12.07

This week, our team successfully conducted the final presentation, effectively showcasing the significant advancements made in our hardware system. The presentation highlighted the structural improvements to the gantry system, particularly addressing the friction issues caused by the charging cable interacting with the charging pad connection. To resolve this, I enhanced our CAD model by increasing the distance between the glass interlayers on the tabletop by 2mm and redesigned the charging pad housing. These modifications ensure a better fit for the charging pad and prevent the cable from rubbing against the tabletop, thereby improving the system’s durability and performance.

In addition to the structural enhancements, I dedicated considerable effort to unit testing and recalibrating the gantry subsystem. This involved fine-tuning the subsystem to accurately move specified distances in the XY direction and ensuring reliable interaction with the computer vision system. Moving from one end of the gantry system to another end, with 57 cm of travel distance, the average error rate for the system is about 1.8mm. We have also run several tests on Z axis manipulator and hardcode its value. Each time the travel distance of the Z axis has a 2-3mm error while trying to improve the stability, this margin of error is acceptable for the design.T hrough rigorous testing, we confirmed that the vision system accurately detects the coordinates of a cell phone and effectively directs the gantry to position the charging pad at the target location.

Looking ahead to next week, our focus will shift to further system integration and enhancing inter-system interactions. I will be collaborating with Bruce on state feedback detection and vision calibration for the gantry’s end effector, ensuring precise positioning after the charging pad is moved to its designated location. These efforts aim to refine the overall system functionality and ensure seamless operation across all components.

Overall, this week has been highly productive, with key improvements made to both the structural design and the functional integration of our gantry system. These advancements position us well for continued progress in the upcoming phases of the project.

Steven’s Weekly Status Report 11.30

 

This week I continued to refine the hardware and control system for the gantry system. In order to ensure a close enough charging distance, I weighed the tradeoff between table thickness and charging effectiveness. Through testing, I found that a 3mm desktop ensures the best charging results i.e. charging with a case and without having to fully align the charging pad with the phone. However, the acrylic sheet we started with was not strong enough and its center section deformed very significantly and blocked the movement of the charging pad. On balance, I urgently purchased and cut glass panels and redesigned the CAD for the corner fixing parts, and tested to ensure that the charging pads would run silky smooth between the two layers of table tops, dragged by magnets.

I also debugged the motor driver and wiring for the up and down movement of the manipulator to ensure that it could perform the specified movement and drag the charging pad under the table. After experimentation, the gantry system now moves the charging pad well. At the same time, because the motor wiring is more confusing. I organized its wiring and centralized the motor driver into a cardboard box to avoid it receiving disconnection and other problems. Next week I’m going to focus mainly on improvements in the accuracy and workload testing of the system as well as the smoothness of the integration.

As you designed, implemented, and debugged projects, what new tools or knowledge did you find you needed to learn to accomplish these tasks? What learning strategies did you use to acquire this new knowledge?

As an ECE student, I started with no specialized knowledge of gantry systems. I referenced many belt designs for 3D printers and other three-dimensional gantry units from the internet. At the same time, the motor driver was more complex than we thought. Since I had not used a stepper motor professionally before, it took me a lot of time to debug the PWM signals. I browsed through Arduino user forums and YouTube tutorials to properly match our motor driver with the motor body.At the same time, since the design process requires a lot of rework, I have also brushed up on a lot of skills such as Solidworks and 3D Printing Slicing through online tutorials and learning from my mechanical engineering friends to help us efficiently complete our tests and improvements.

Steven’s Status Report 11.16

Weekly Progress and Testing Plans

Harry and I spent about 30 hours this week building and testing the gantry system. We completed the hardware construction and testing of two sets of motor drives and belt drive systems. Currently, our motors can drive the manipulator to move smoothly. We encountered very many technical problems during the building process. First of all, our motor drive had the problem of insufficient torque at the beginning and could not drive the belt system during the actual system verification. I reduced the number of microsteps in the stepper motor drive from 6400 to 3200 and increased the drive voltage from 9V to 12V. We verified that this configuration could successfully drive the system by linking the motor to the belt and testing it with the whole gantry system.

We are still trying to test if we can control the end effector using the difference in speed and direction of rotation of the two motors because of a delay in the end effector part we 3D printed at Techspark.In the meantime, we have been verifying the charging of our wireless charging pads this week. We tested our 5W and 12W wireless charging modules as well as Apple’s original wireless charging module. The 12W charging module had the best results. We tested it on 3mm and 5mm acrylic boards, and with the 12W charging pad, we were able to charge a phone without a case on both thicknesses of acrylic boards very smoothly. For phones with cases, charging on 5mm acrylic requires a very tight fit between the phone and the charging pad. We will be printing out the charging plate pallets next week for the 5mm charging experiment to see if the 12W module can fully meet our needs. We plan to complete the gantry system to grab and release the charging pad next week and provide an API for the computer vision system to move the pad.

Steven’s Weekly Status Report 11.09

This week, my primary focus was assisting Harry in developing the overall framework of our project. Together, we dedicated a substantial amount of time to completing the mechanical hardware build for our automatic charging table. By utilizing aluminum extrusions, we were able to construct a sturdy and reliable platform that not only supports data acquisition an

 

d machine vision training but also maintains the necessary strength and durability required for our operations. The modular design facilitated by the aluminum extrusions allows for easy adjustments and future scalability, ensuring that our framework can adapt to evolving project needs.

In addition to the mechanical advancements, I made significant progress on the gantry system, particularly concerning the stepper motors. I enhanced the motor control code by integrating motor drivers with a Jetson Orin Nano, which improved the overall functionality of the system. A key achievement this week was the successful conversion between the step size of the stepper motors and the corresponding belt travel distanc

 

e. This was accomplished by constructing a simple prototype of the gantry system, which served as a proof of concept for our control mechanisms. Furthermore, I tuned a set of Proportional-Integral-Derivative (PID) controllers to achieve more precise motor control. As a result, the motors now operate with increased accuracy, maintaining an error

margin within 5 millimeters over a 30-centimeter distance. While this level of precision meets our basic control requirements, it highlights the need for further adjustments to the control program to achieve higher precision for more demanding tasks.

Looking ahead to next week, our plan involves mounting the gantry system prototype onto the main frame. This will require the use of 3D-printed parts to securely fix components such as the motors and belt gears. Ensuring that these components are firmly attached and properly aligned is crucial for minimizing vibrations and misalignments during operation. Once the prototype is mounted, we will conduct comprehensive performance tests on the actual frame to assess the system’s stability, accuracy, and reliability under real-world conditions. These tests will provide valuable data for identifying any sources of error and areas that need improvement in both the motor control algorithms and the mechanical setup.

Simultaneously, I will continue refining the motor control program to enhance precision further. This includes fine-tuning the PID parameters and exploring advanced control algorithms that can reduce the existing error margin. Additionally, integrating more sensors or feedback mechanisms may offer real-time data, allowing for more accurate adjustments and control. Maintaining effective communication with team members remains a priority to ensure cohesive progress across all project aspects. Efficient resource management, including the allocation of materials for the mechanical build and computational resources for code development, has been instrumental in our advancements this week.

In summary, this week has seen substantial progress in both the mechanical and software components of our project. The completion of the automatic charging table’s mechanical build and the advancements in the gantry system’s motor control have established a solid foundation for the upcoming integration and testing phases. Addressing the current precision challenges and continuing to refine the control algorithms will be essential in enhancing the overall performance and reliability of our system in the weeks to come.

Steven’s Status Report 11.02

This week, my main focus was motor development. I successfully configured the motors on the Raspberry Pi using an external power supply to be able to perform basic commands such as turn and stop. Given that the Nvidia Jetson Orin Nano utilizes the same GPIO libraries as the Raspberry Pi, we were able to extend the motor control functionality to the Jetson platform, facilitating seamless integration with the motor driver. This compatibility provides a streamlined path for us to continue development on Jetson.

Despite these advances, I still need to accelerate the completion of the gantry system. It is important that we complete this work as soon as possible because it will allow us to translate coordinate positions directly into motor commands. This capability is critical to achieving the precise motion control we need for our application.

On the assembly side, Harry and I collaborated on the 3D-printed parts of the gantry and have made significant progress in building the structure. Next week, we plan to complete the assembly of the gantry system for functional testing. This phase will involve validating and assembling the mechanical design and ensuring consistency with the motor control logic. It is important that we complete the build and commissioning of this system as soon as possible, as we have created a partial gap between our process and our plan.

In addition, since the motor is the only component in our system that requires a high voltage range of 15V to 45V, we must determine the best way to fully power it. Our main challenge was to find a power solution that could be centrally managed to ensure operational safety. This required selecting a power supply or battery management system that could interface with our controllers, allowing us to safely monitor and control the power supply to the motors.

Steven’s Status Report 10.26

Due to an unforeseen procurement issue, we were not able to obtain the aluminum profiles and motors and accessories needed to build our gantry system as planned this week, so we were not able to begin assembling our system. So this week I spent my time mostly on the parts that didn’t require physical hardware.

This week I further refined the CAD modeling and simulation, and following up on last week’s design of the motor support structure, this week our motors were able to be fixed in their designated positions and function properly in the type of environment we were working in. I fabricated the motor support structure at Roboclub using a 3D printer, however because of the slicing problem. Our parts were not able to reach the hardness we needed during testing, so next week we need to continue 3D printing to get a strong enough motor mount.

 

Carrying on from last week’s motor controller development, I wiring the Jetson Orin Nano this week, there was some difficulty with the pin assignments as we have more peripherals, however as the motor driver only needs analog signals we assigned it to a few free pins. It was tested by a logic analyzer and it works properly.

We have been notified of the arrival of our hardware this Friday afternoon, and next week we hope to finish connecting and debugging the motor controllers and attempt to begin building and debugging the gantry system.

Steven’s Status Report 10.5

My first priority this week was to complete the mechanical modeling simulation and part selection for the Gantry system. For the power configuration, I chose a common NEMA motor to power the system, a set of two motors to power the horizontal and vertical movement of the entire system, and a separate motor to control the arm up and down to grab the charging pads for movement. Since I hadn’t touched or designed a gantry system before, I researched and borrowed some designs from cheaper 3D printers, and used a combination of two sets of moving and fixed pulleys and 6mm belts for the drive, as well as a set of MGN9 rails for the limit. I finished picking and filling out the drivetrain parts on the purchase list and we’ve submitted it to the TA for review. Since most of the parts are being purchased using Amazon, we hope to complete the development of the motor controller drives and the basic Gantry build over fall break and the following week.

In the meantime, since we’re picking parts together this week, we think that choosing how thick the acrylic or glass panels will be is an essential thing to consider. We experimented with both 3mm and 5mm acrylic sheets and found that 3mm would be a good balance of strength and charging performance. We will use Techspark’s acrylic boards for the time being in subsequent experiments because of the possibility that the glass may break during the experiments. While waiting for the hardware to arrive, I also plan to finish testing the vision system with the team, and we will decide soon whether to use traditional vision or a machine learning model such as YOLO for cell phone device tracking. If machine learning is to be used for cell phone device tracking, we will immediately start collecting case data from cell phone devices and begin developing our first version of the model.

 

Steven’s Status Report 9.28

This week in a meeting with my professor and TA we explored a technical challenge in our previous design, which was the question of how to power a movable rechargeable robot. We started with two solutions: one was to use wires to power the robots, however the tangling and resistance of the wires could cause a number of complications; the other was to add batteries to each of the robots, however after doing some research we realized that it would be difficult to charge the robots by homing them in place as the electrodes are too small and would place a huge demand on the robot’s controls and would be difficult to control. too large an electrode would pose problems such as circuit safety.

After several iterations this week, we finally decided to use a completely new design. We used the Gantry system, however, in order to achieve the effect of charging multiple devices at the same time, we came up with the innovative idea of using magnets on the end of the Gantry to move the charging pads across a layer of acrylic. This design is stable and efficient and allows for the charging of multiple devices.

After finalizing the design, I completed the mechanical design for the second version. This version focused more on the internal principles and concepts than the previous design, using real dimensions and an aluminum frame. This also meant that our design was being further refined. However, our Gantry system does not have the ability to purchase a frame directly due to its size, so we are still researching and discussing the design of this system. However the overall design is still very clear, and I have set deadlines for the complete overall design and hardware purchases that need to be made before fall break to ensure that our plans can continue to develop as we expect.

Steven’s Status Report 9.21

This week I’ve been focusing mostly on the mechanical design aspect of the project. After discussions with the group, we basically settled on a three-tier table design: the bottom layer is for the camera module, the second layer is a transparent acrylic panel for charging the robot to move around, and the top layer is a transparent tabletop.

I have our V1.0 CAD model finished. And we are also working on the mechanical design for the moving charging robots. We got out inspiration of the moving charging robot from CMU Zoom Lab’s multi-agent robot and we consider to use ESP-32 as the Central Processor for our robot as its compact size and built-in wireless communication features fits our application.

Next week, I will further polish the CAD design for our desk and starting the detail CAD design for the charging robot with real-world dimensions. Hopefully, we can have a better design image while at the same time starting the component selection process, as the model of motor used by the charging robot could impact a lot on the mechanical design.

As for the presentation slides, I was in charged of division of labor, schedule, and Preliminary Testing & Validation. I have reviewed the advice from the post-presentation feedback and audience reflects that our Gantt chart is hard to view. They also suggest that our task division in the Gantt chart could be more achievable and solid if we can split the task according to the different levels of the tasks. So next week, I will also further refines our Gantt chart and then ask for professors’ and TAs’ guidance.