Scara end effector compensation?
-
Hi guys, it's been a while...
I'm planning on converting my scars and pick and place one to duet and open pnp, my main concern is the orientation of the pick head effectively the end effector, is there a simple solution to this? Mechanical side, there is already a stepper orientation for the nozzle
Also, for reference, the machine is an old RV4s; the reason for converting is the software is somewhat deprecated also planning to convert to a clear path servo as the original steppers are 5 phase noisy units aside from the z-axis and nozzle
Any help would be appreciated
-
Any help, guys?
-
This post is deleted! -
@thatbigprint
I would recommend that you use RRF (RepRapFirmware) for the Duet instead of OpenPnP if using a Duet controller, using because it's ready to use and offers good integration for motion control, diagnostics, easy configuration changing.=> edit: using bothedit: I think the current RRF has anything you need to run your RV4
-
This post is deleted! -
I remember @koaldesigns modifying RRF to add a rotary axis to Scara -- maybe that's applicable here?
-
@oliof this here: https://forum.duet3d.com/topic/22106/rotational-effector-joint-on-scara-printer-success?_=1655462643564
He has also developed a nice harmonic drive https://www.thingiverse.com/thing:4802917
-
@joergs5 thanks for the info, do you know if he got it finished, in the end, hit GitHub says it's still got issues?
also regarding RRF, correct me if I'm wrong but the duet or scare would just be a serial "3d printer" as far as open PNP is concerned? and you just send it gcode coordinates
-
@thatbigprint I don't know status of koaldesigns development, sorry. But after reading OpenPNP in detail, I think you don't need additional capabilities.
Regarding RRF, you're completely correct. If I understand OpenPNP correctly, it acts as a slicer, generating XYZ and rotation (endpoints orientation) commands and then sends it to your RV4 as G-Code commands. It looks like a nice program, integrating camera and picking planning.
Rotation of the nozzle in OpenPnp is explained in https://github.com/openpnp/openpnp/wiki/Nozzle-Rotation-Mode
Looking around on OpenPnp page, I discovered a section about how to connect it with RRF: https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#duet3d
If you RV4 is controlled as a cartesian (XY are linear), then it will be easy, because you can add axes to RRF and use it for the orientation rotational axis of the gripper. If it's like a delta, I am not sure whether it's included in RRF already. But probably yes, because I know of a delta with a separate actuator to place the filament guide near the nozzle.
-
@joergs5 well i have started already started stripping the rv4s just for visual info mike has done good vid of overall operation of the rv4s https://www.youtube.com/watch?v=ZaqvEftw7aI
plan is remove the original motors two that operate the main arm with large pulleys in the base (huge 5 phase steppers super noisy) and some more nema 17 size motors that deal with the nozzle and one that lifts nozzle/ camera (again 5 phase)
i will be attempting to replace most if not all of the motors with clear path servo motors and worse case use 0.9 deg steppers and use duets drivers
few things I'm for sure not sure about, the feeders ? where is the section to adjust commands to them they are simple serial devises and we have the original coms structure for them although i may hack them up as well and replace with arduino as they are noisy and way too aggressive for plastic tape
the other item i kind of want to retain is the flying camera but i presume that is almost impossible just due to the complex maths involved regarding rotation of the camera given its essentially attached to the joint 2 arm as you may tell from mikes vid above ?
so what duet do you think i will need ? i already have a few duet 2 boards or do i need more processing power ?
-
@thatbigprint nice video, thanks for sharing, I'll watch it. I need one RV4s, too
I am currently analyzing an electronic circuit and read a bout flying probe tester to test PCB, this is a possible application for your machine.
I cannot give recommendations, but servo is a good idea in general. If you need precision in placement, using servo with good gears (harmonic drive) is an option to consider.
An alternative to replacing the parts is to install a sound enclosure.IMHO Duet 2 (if you mean the Wifi or Ethernet models) and 3 are comparable regarding performance (6HC with Cortex M7 for high performance may be an exception for specific kinematics), I don't think updating just for performance is necessary. Maestro should be avoided, as it doesn't have an FPU.
-
@joergs5 fantastic, let the build bein pictures to follow; I can duplicate the mechanical parts to thank you for helping I don't have super long to do this project as I need it running.
I started work already on paste dispensing with a modded delta printer, but I can transfer that extruder across for that function.
The flying test looks good. Has open PNP got that function? I just designed pogo boards for what I make with on board esp to interrogate the pins of the subject board...
So do we have the makings of config code I can dump on?
-
@thatbigprint OpenPnp supports camera recognition, this is the first important step (recognize where the contacts are, then placing the probe). OpenCV is a great image tool which is used by OpenPnp and support such things like neurol network training. I am using KiCad to create the circuit information, which uses text files for the circuit information, giving control to add some addon if the flying probe support is missing. For flying probe tester, you'll need to probe on both sides of the PCB at the same time, this is maybe not supported with RV4s.
Regarding config, I recommend
- use the config tool https://configtool.reprapfirmware.org/Start to create a sample config which is similar to your hardware (especially the correct kinematics)
- read and understand line by line the commands, most important being config.g Read summary of the G-Code commands in https://docs.duet3d.com/en/User_manual/Reference/Gcodes or in the old documents.
- after understanding, changing the config to your needs is no problem anymore
I recommend learning and understanding the G-Code, because this gives you confidence to have control. The following steps like the OpenPnP created commands are all created using G-Code, so you'll understand all details.
I made me summaries (in OneNote) with links about the most important commands and images where I wired on the board.