3 days ago •
I had very good results with PnPAssist V1. However, I saw that there were some opportunities for improvements and started working on the design of V2. The main reason for V1's design change is Center of Mass (CM). The stepper motors are the heaviest part of the system and both motors are positioned at the rear and pulling the CM towards them. However, the CM must be on the main rotary axis, which is in the center. In order to make the CM in the center I decided to place the motors on each side to balance the system.
The other design change needed is because of the center main gear. This 3D printed part works well, but it is obvious that it will wear out over time due to the large frictional forces on it. This part must be manufactured from metal. However, it will be difficult to manufacture due to its unusual and low tolerance structure. In my new design, I decided to use a timing belt because it was cheap and accessible. With these design considerations here is the design of the V2:
08/04/2021 at 08:11 •
User Inputs :
The user provides a mount file (PnP file) stored in an SD card. This file contains component names, values, coordinates and angles all of which are input for the controller.
The other user interaction with the device is pressing the next component button. This input triggers the controller to read the next line from the mount file and moves the motors to the position to center the next component that will be placed on the PCB. The controller also display the name, value and package of that component.
Mount File Inputs:
The mount file contains the following data and the controller reads this file line by line and generates the following outputs.
Input Output Name, Value and Package of the component Display on Oled Display X, Y Coordinates of the component Motor pulses after kinematic calculations. Angle of the component Controller does nothing. User rotates the machine at the main axes to feel comfortable before placement.
This device requires 12V DC power and around 1 amps current. There are two voltage regulators 5V and 3.3V for the on board peripherals. In order for the cables not to disturb the user, the power is transferred to the board with a small slip ring.
Display the name, value and the package of the component to the user in order to help to pick it up from the component storage.
Motors and Motor drivers
Performs the movement to center the next component.
08/03/2021 at 06:56 •
The neo pixel component box did not worked with the current firmware which heavily rely on interrupts. The single-wire control protocol used by NeoPixels requires a very steady data stream at 800 kilobits per second. Bits must be issued at a precisely controlled rate. We are also generating pulses for motor driver, we have I2C oled and SPI SD card on board. It is not easy for Atmega328 to handle all this time critical processes.
- We can use Dotstars (APA102C and SK9822) which use a two-wire SPI-like protocol. It has no specific timing requirements, which makes it much less demanding to drive. Either a hardware SPI module or a bit-bashed equivalent can be used.
- We can use another micro controller like arm based systems that has extra timers for this time consuming process.
- Or we can work deeply on the firmware to find out a better software solution.
I will choose none of them. I am working on the mechanical design of the PnPAssist V2. I have better ideas for the component box. if i need to give a hint it will be a carousel!
07/26/2021 at 17:17 •
I have change the main rotary axis bearing to
16010 bearing 50x80x10
The old one is not precise enough under microscope.
The BOM updated
07/26/2021 at 17:10 •
I just added the 2D files for sheet metal parts. You may need to countersink some holes for proper assembly.
### Material and production
Laser cut from 2mm Aluminum
07/24/2021 at 12:25 •
I tested so many different designs for the main rotary gear. I am glad where I am at the moment. It took my time to get an accurate design point. I updated the github repo with the final design
07/20/2021 at 16:39 •
here is the video of the machine
06/21/2021 at 08:41 •
It is time to get a fabricated PCB board instead of this messy one. I build the first one with the in hand components
I have designed and order the New Controller Board from PCBWay. All the design files are in the GitHub Repo.
06/15/2021 at 08:53 •
I started with a simple motorized cross table under the microscope for the proof of concept. I also use a cross laser beam to highlight the place of the component. It worked well. The down side of this design is I can not rotate the board while placing the component. SMT components has various orientation mostly 90 45 degrees on the board. So freely rotating the board gives me a lot of freedom while putting the component on the PCB.