Four Nozzle setup, driven by two steppers with cams and retracting spring

430 views
Skip to first unread message

Cyril

unread,
Sep 14, 2017, 3:02:59 AM9/14/17
to OpenPnP

Hello,


Is there anybody who is using 4 nozzles driven by two motors?

I need an example "machine.xml" for that. 

There are quad rotating C1-C4 axis, also dual Z12 and Z34.

How to config dual Z I can't figure.


Regards


Cri S

unread,
Sep 14, 2017, 3:40:59 AM9/14/17
to ope...@googlegroups.com
I use grbl driver, so it not intersing for you.

if nozzle are AB - CD you must configure it as follows in that order
for max speed
A=N1
C=N2
B=N3
D=N4
It is possible to run it with 5 Axis controller sharing the same
rotation axis on all nozzles,
you can connect two motor serially and just use one additional motor
driver for the other
two motors and using the two required modifications (driver/planner)
for shared motor
configurations.
> --
> You received this message because you are subscribed to the Google Groups
> "OpenPnP" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/a8b2e046-46fc-478f-a73e-47527040b2d6%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

Cyril

unread,
Sep 14, 2017, 4:15:29 AM9/14/17
to OpenPnP
Hello Cri,
My machine does have eight independent axis controller.
X,Y for the head positioning, Two separate Z's for the twin cams pushing down 4 nozzles, and four nozzle rotating C's.
So far I was using LinuxCNC driver and have written my own translator from TCP socket to USB serial featuring the machine's controller proprietary binary protocol.
Actuators for vac and feeder are also forwarded via TCP->USB path. I have modded LinuxCNC driver a little bit to allow actuator reading and status position report in reverse direction.
However LinuxCNC driver is slightly outdated, and there is lack of some features available in Gcode and grbl.
So I''ve made a virtual serial port bridge pair - virtual null modem and hooked Gcode driver to my protocol translating code.
No I am reimplementing commands, LinuxCNC and Gcode are close but there are many differences as-well.
For dual nozzle operation I have figured out how to distinguish which one is active (for rotation) with using T0/T1 prefix commands...
Also Z axis negation for counterweight  cam operation, I had succeeded.
but now I am stuck, how to process dual Z axises... with 4 nozzles...
I have protocol translator between openpnp and the real machine controller, so emulating grbl will not be problem at all.
just give me the essential how to distinguish the two Z's.
Best regards

Cri S

unread,
Sep 14, 2017, 4:58:28 AM9/14/17
to ope...@googlegroups.com
1) it is better to use serial driver and using socat or windows
equivalent to convert uart to tcp/ip stream and from tcp/ip to
serial/usb if needed.
2) Usually axis are driven separatly and not using multiplexer.
You'r multiplex C and Z axis using T0/T1/T2/T3 . It works and have some issues
that need to be adressed.
The usual way is annother. There are XYZ UVW ABC(DE) axis, total 9 or
11 that can
be direct adressed.
Usually XY is for linear motion, ABCDE is for Z axis, and UVW(Z) for rotation.
>> 2017-09-14 9:02 GMT+02:00, Cyril <gonzo....@gmail.com <javascript:>>:
>> >
>> >
>> > Hello,
>> >
>> >
>> > Is there anybody who is using 4 nozzles driven by two motors?
>> >
>> > I need an example "machine.xml" for that.
>> >
>> > There are quad rotating C1-C4 axis, also dual Z12 and Z34.
>> >
>> > How to config dual Z I can't figure.
>> >
>> >
>> > Regards
>> >
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups
>> > "OpenPnP" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an
>> > email to openpnp+u...@googlegroups.com <javascript:>.
>> > To post to this group, send email to ope...@googlegroups.com
>> <javascript:>.
>> > To view this discussion on the web visit
>> >
>> https://groups.google.com/d/msgid/openpnp/a8b2e046-46fc-478f-a73e-47527040b2d6%40googlegroups.com.
>>
>>
>> > For more options, visit https://groups.google.com/d/optout.
>> >
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "OpenPnP" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/188e023a-f53f-4256-873b-f4a20cabbc47%40googlegroups.com.

Cyril

unread,
Sep 14, 2017, 7:41:04 AM9/14/17
to OpenPnP
Hi Cri,
SMT460 machine's controller need to be run with proprietary binary
protocol. It is neither compatible with Gcode, Gbrl and LinuxCNC. There
are 7 byte long commands and 6 byte responses. All axises, vacuum and
air solenoids for feeders are controller via Serial port at 921600 BPS.
I have eavesdropped on original communication, and partially decompiled
the stock PC part of the control software. Then I wrote an application
which can be run on the same machine together with openpnp, or as
external device such RaspberyPi, which translates LinuxCNC (received via TCP)
and GCode  hooked via virtual Serial port from openpnp, to the machine's native protocol.
Now I have everything running smooth, but so far I have used, first only one, and later
two nozzles driven from a single stepper. Now I am facing trouble, how to config
openpnp propely for 4 nozzles with two steppers for Z. Rotatiion is handled by prefix
T0,T1,T2,T3... Driver and syntax of commands is not an issue, I can intercept any format
then convert it to machine native.

Regards

Bernd Walter

unread,
Sep 14, 2017, 8:17:09 AM9/14/17
to OpenPnP
I have such a 4 nozzle setup using the Robotdigg 4x head.
Here is my machine.xml: http://www.bwct.de/~ticso/machine.xml
Basicly you setup two Z-Axis sections (named z1 and z2 in my config)
do CamTransform on them, just as you would do for a single cam setup.
In the MOVE_TO driver command you refer them both as Z, but in
the nozzle section.
I use 2 gcode controllers - the primary with XY and both Z and a subdriver
for the 4 rotation-axis.

Cri S

unread,
Sep 14, 2017, 8:39:22 AM9/14/17
to ope...@googlegroups.com
two nozzles works? correct.
it is just a driver configuration, depending on you'r driver code.
You have Nozzles N0, N1, N2, N3 or N1, N2, N3, N4 depending on 0 or
1 based index.
You need to convert it to 0 based index, resulting in N0-4, that you
already have done
for C axis T0-T3, i refer it to 'n', Tn .
You just need to check " z=0; if((n&2)!=0) z++; " on you'r code driver
that convert (g)code
to machine code in order that you index the correct Z motor, 0 or 1
based on Tn selection.

On custom drivers, usually i convert the follow call to:

moveTo(HeadMountable hm, Location location, double speed); {

}
to
moveTo(Location location, HeadMountable hm, double speed);

to
moveTo(double x, double y, double z, double c, double speed);

where usually one of this is syncronized and nozzle to use, coordinate from
z0, z1, z2, z3, z4 , ... are loaded into Z and flag is set if Z need
to be inverted and what
code/driver/gcode prefix to use . Hovewer it depends a lot of coding
used on custom driver.
> --
> You received this message because you are subscribed to the Google Groups
> "OpenPnP" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to openpnp+u...@googlegroups.com.
> To post to this group, send email to ope...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/openpnp/25aab159-cb27-45ea-a38d-25420aa71a8a%40googlegroups.com.

Jason von Nieda

unread,
Sep 14, 2017, 9:07:03 AM9/14/17
to ope...@googlegroups.com
Bernd has it right. There's actually several ways to do this, so it's really your choice as to how you want to handle your Gcode.

Here are the main things to know:

1. Set up an <axis> for each physical axis in the machine: X, Y, Z12, Z34, C1, C2, C3, C4. 
2. The two Z axes each control two nozzles, so set the ID list to the IDs of the two nozzles each should control. See Bernd's example.
3. For controlling rotation, just set the appropriate MOVE_TO_COMMAND for each nozzle. For example:
N1 MOVE_TO_COMMAND: G0 {X:X%.4f} {Y:Y%.4f} {Z:Z%.4f} {Rotation:C1%.4f} F{FeedRate:%.0f}
N2 MOVE_TO_COMMAND: G0 {X:X%.4f} {Y:Y%.4f} {Z:Z%.4f} {Rotation:C2%.4f} F{FeedRate:%.0f}
etc.

There is no need for code modifications or custom drivers. This can all be easily configured with existing functionality in GcodeDriver.

If you are still struggling, show me your existing machine.xml and tell me the Gcode that controls your 8 axes and I'll help you get going.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

anghel.alexand...@gmail.com

unread,
May 8, 2018, 7:23:19 PM5/8/18
to OpenPnP
Hy, 

I have seen that you have experience with SMT460. I am having big issues with the seller. I bought an SMT460 from YX and sent me an HW-T4-42F. He says machine is similar to the SMT460.
The problem I am facing is that few days ago he sent me the new software and firmware for this machine and turned it into a nightmare.
After I installed the new software and firmware, the PC software didn't work because with the new software before you push connect you have to choose your machine. However there is smt440, 660 and 880 etc but NOT the SMT460. With the SMT660 the parameters are not ok and I could damage the machine hardware. My Y axis only moves about 4 cm and the X axis can move beyond its length wich result in collision since it only have a homing position and no end switches. I asked the seller to sent me the right files, he sent me 4 times the same files. I now own a machine that cant do nothing. I asked him for the older firmware so I can instal it back again and go on with the older software and now claims it is impossible and would not work. I have never encountered something like this with a professional in my life.
He truly do not care and show no respect whatsoever. I have previously had business relationships with other people from China and never a problem. They were hard working, trying to do their best. This guy is very rude especially if you lay the facts and tell it how it is. As you can see I am very disappointed and upset with this. It is slowing down my business which I worked for very hard to start this. I lost more then a month and half total time with delivery issues and now with this software. Any advice? I saw that you somehow have experience with the older software of this machine and maybe you could help me and provide me with the firmware of the main and slave mcu. When I installed the new firmware I uploaded their new .TFU files and was 99% certain that he would also have the older firmware in case this went wrong. 

greets


Op donderdag 14 september 2017 13:41:04 UTC+2 schreef Cyril:

Danial Mejrisazan Toosi

unread,
Oct 12, 2018, 10:08:17 AM10/12/18
to OpenPnP
Hi ,
thanks for sharing your experience, I was about to order SMT460 till I read your review.
How are you dealing with your machine know?

Chuck

unread,
Apr 21, 2019, 9:54:52 AM4/21/19
to OpenPnP
Ihane the SMT460 and we use it regularly..
I did upgrade the software but not sure if it was actually different.
But after upgrading, it defaults all you feeder params, so I suggest you make a backup of the folder first with all you settings, then youcan copy these files back and maintain your settings.

Mu biggest complaint is the High Speed camera, while it does work well, the set up is not intuitive, ie. poor docs, there are settings the are not explained...
So i have to just play until it works.
BUT, one thing I did finf was I had to increase the brightness On the camera tab, to make the HS cam see the part and be able to find the pins for alignment.

The TRAY setup is also a hit and miss, but if you document your steps for next time you will be glad you did.

I have a chinese friend, and I had him interpret the msg windows as they popped up.

the machine is very acurate and repeatable, just wish it had better english support and operational docs..

chuck

Reply all
Reply to author
Forward
0 new messages