Safiya’s Status Report 12/6

What I accomplished :
I belted the entire system and remounted the linear ball-bearing mounts. The carriage now travels up and down smoothly across the full stroke. I remounted the LivePin board at the correct spacing from the carriage. I also designed and fabricated the reset mechanism, including two custom acrylic brackets. One set to mount the linear actuators and another to hold the reset plate that clears the pins.

Needs to get done :
I need to make sure after programming is done with the 32 servos, to make sure the racks and pinions all interact properly and there are no mechanical faults. Also the final report and video need to be done, along with all servo testing.

On Track:
Yes, but with some setbacks.

Team Status Report 12/6

Unit Testing:

  • Gantry moved up and down 5 times without faults
  • Z-axis limit switch homed the gantry reliably
  • Pin board stability: spot-checked ~1/3 of pins.  All moved freely and stayed seated
  • Reset button triggered linear actuators to retract and clear all pins
  • Quick user test via Google Form
  • Software unit tests: matplotlib visualization
  • Not yet tested: rack-and-pinion row (all-retract, all-extend, mixed depths)

Findings:

User Findings: 

  • Heart: 100% of respondents identified correctly
  • House: 100% of respondents identified correctly
  • Abraham Lincoln:
    – 91% of respondents identified correctly
    – Skull, face, or Abraham Lincoln were considered correct answers
    – 
    Respondents were asked on a scale of 1 to 10 how similar the images on the right were

    • Mean: 6.85
    • Median: 7

Gantry:

Smooth travel on rails, stop within 1 second of limit switch trigger, flips direction on button press.

Tedd’s Status Report – 12/6

This week was pretty hectic. Early this week, we had our final presentation, where we presented our final designs and finishing touches on our project. However, we ran into a few issues with some parts, causing us to find alternatives specifically in the firmware. The software components stayed the same and there is still consistency for that portion. However, we have a lot of wires and still need to get servos to get fully working.

A large part of this week was implementing the reset mechanism. With a transparent plate as our reset plate and with two linear actuators, we were able to fully implement this on our pin board, allowing us to automatically reset the pin board when the image is created.

The finishing touches on our product will just be gluing more dowels and wiring the servo motors and finally integrating all the subsystems before the final demos on Monday.

Crystal’s Status Report – 12/6

This week was quite eventful. I fried one of our pwm expanders which was a critical part of our project. To fix this there were 4 possible solutions: connect 10 servos to the stm and 6 to the raspberry pi and use UART signaling to initiate servo motor movement (all servos would not be able to move at once, give up on 6 of them and only drive 26 servo motor, use an arduino to drive the remaining servo motors, or use an Arduino Mega. Originally, I borrowed an Arduino Mega from Roboclub, but their Mega was broken and the I2C did not work. We had to borrow one from Justin from Techspark. I had to rewrite the STM code on to the Arduino. We are on track to finish because we have to. Next week we hope to finish everything (duh).

Team Status Report – 11/22

The most significant risk that could jeopardize the success of the project is when our supplies for the reset mechanism and dowels come in. We are looking into alternatives for the reset mechanism, but the dowels do not have alternatives. No changes were made to the design. I would add pictures but our media quota has been reached.

Crystal’s Status Report – 11/22

This week I cut hundreds of dowels. I still need to cut more when the other dowels come in. This week I also successfully wrote the firmware to control 3 servo motors on the PWM expanders and 2 stepper motors. I was originally having issues with the PWM expander, but the issue was that I forgot to plug it into a power source. When I first flashed the code onto the STM, the stepper motor twitched. This was due to the step pulses being too fast. I then added the stepper motor code but the stepper motors just did not spin. I tried to debug this by unplugging the I2C PWM expander, but the stepper motor started twitching again. This was because with no I2C devices connected, the I2C reader was failing and was blocking for a short period of time. This made the stepping loop slower, allowing the motor to spin. When I reduced the timeout, the stepper pulses became fast again, causing the motor to twitch. So increasing the I2C blocking period was just slowed down the CPU to make the stepping speed possible. The second stepper motor also initially used illegal GPIO pins.
I am on schedule, but I am concerned about the ability to incorporate the reset actuators because that depends on when they come in. We also have not ordered all of the dowels yet because we need to wait for them to restock.
Next week I hope to write the firmware for the second PWM expander and write the button powered interrupt that will trigger the reset.

To accomplish my task, I needed to know how to use the CubeIDE, know how servo motors worked, and understand the ability / limitations of different microcontrollers. I practiced reading data sheets and how to internet search to acquire this knowledge.

 

Safiya’s Status Report 11/22

Progress: 

Gearbox

This week was a grind to finish really all the mechanical components of LivePin. I believe it is 2/3 of the way there. There were a few bumps in the design that caused me to take some more time drilling a couple holes to make the gearboxes fit, but so far I have all the 3D Printed parts other than the pinions and reprints of the feet. I was able to assemble the full frame and carriage (without servos),  and am now working on the gantry, I assembled 1 out of 2 of the gearboxes and started belting it today. I superglued the bearing plates to the carriage, and am letting it set till tomorrow. I also made edits to the pin board by putting on 10 spacers.

Assembled Carriage with bearing mounts
Belt and gearbox on frame, plus spacers on PinBoard

 

 

 

 

 

 

Goals for Next Week: Handoff LivePin to programming on Tuesday at the latest. Finish testing by Sunday. This also includes smaller goals like printing all pinions by Tuesday, finish assembly of gearboxes and belts, as well as assembling the pin board.

On Schedule: Yes but rushing

Question of the Week:
Knowledge I found necessary to learn was research, design, and execution. Although tedious and at times hopeless feeling, research and designing in CAD were so crucial once I reached assembly. The time I put into a thoughtful design is now paying off as the construction comes to life and the moving parts start to fit together. Another strategy is research, I had no idea how to make a “LivePin” or a tool that goes up and down and pushes pins, so I looked for parallels and studied those. I could not find any LivePin type devices, so I looked at how 3D printers are built. That research was the basis of the design and made things work. I also learned to prioritize purchasing even when the design was not as far along as I wanted. Knowing to reprioritize was crucial.

The biggest new skill was talking to people who could help. I introduced myself to laser cutter monitors, Robo Club managers, and the machine shop manager, and they helped with both fabrication and sourcing (bolts and acrylic). Those connections were actually fun and very useful for reality checks. For example, I was ready to 3D print 1,024 pins until a TechSpark woodworker suggested using dowels instead, which saved time and money. These are the strategies I am keeping: Research and design (thoroughly), use your available resources, and learn to reprioritize when necessary.

Tedd’s Status Report – 11/22

This week, I worked on designing the reset mechanism system and gathering all the moving parts that would feed into the system. In addition to refining this subsystem, I began integrating a Raspberry Pi as the primary controller for communicating with the STM32 via UART. The goal of this setup is to reliably transmit the full 32×32 pin array data, ensuring low-latency, error-tolerant communication between the two devices.

To move toward this, I configured the UART interface on both the Raspberry Pi and STM32 and started developing a structured data-packet format to handle the larger pin-array payloads. Looking ahead, I am planning to build a GUI system on the Raspberry Pi to make the user interface cleaner, more intuitive, and maintainable. This GUI will eventually allow users to interact with the depth camera more intuitively and  edit and send the 32×32 pin configurations seamlessly. It would also ideally control the reset mechanism as well.

This Thanksgiving break, I am planning on working on the presentation slides as well.

Crystal’s Status Report – 11/15

This week I started working on incorporating the PWM expanders and big stepper motor driver. Previously the servo motors were directly plugged into the GPIO pins of the STM. This would not have been efficient because a single STM does not have enough ports to directly connect 32 servo motors, so we had to buy 2 PWM expanders. Similarly, our stepper motors were previously run on A4988 stepper motor drivers, which did not have enough current to support the weight of our carriage holding 32 servos and gantry belt. I slightly moved the schedule around by working on incorporating these components first instead of programming an interrupt for the rest mechanism. I am still on track. Next week I hope to have all 32 servos working on the PWM expanders and the stepper motors on the heavy duty driver.

Safiya’s Status Report 11/15

This week my priority was Frame/Gantry Assembly and 3D printing. I made significant progress and am proud to see the design from CAD coming to life.

I printed the feet of the frame and partially assembled the frame of LivePin. I also finished the hopefully final design of the carriage, where I added lightning holes, made the mounting holes. for the servos bigger, and increased the size of the rack slides to allow for easier sliding this time around. I finished printing it! And now need to assemble it on Sunday and design the mount for it onto the frame.

I also printed 16/32 racks, no pinions yet, and printed most of the components. I aim to finish 3D printing by this Wednesday. I also aim to have the frame completed by Sunday, and mount the carriage and belt by Friday.

I am a little rushed for time, but I am ahead of the schedule on the update Gant Chart.

Frame Partially Built
3D printed Feet, and belt prints
Carriage Fully Printed