It seems to me that the specifics of a pick-and-place machine warrants its own motion control card.
The combination of high accuracy and high speed is unique to pick-and-place machines. And the number of motors being driven is higher than most applications. Jarosław Karwik has already done some really promising work:https://groups.google.com/g/openpnp/c/oRY0dIKeIDw/m/jSIt2YEWCgAJThe existing motion controllers have certainly gotten the job done and those pros and cons can be found here:But in the end, all those cards were designed as general cards or even aimed more towards things like 3D printers.
And I think we are all aware that pick-and-place machines come with their own specific challenges.My friend and I were discussing what that controller should look like and here's what we came up with:
- Mother and daughterboard pair (to allow remote mounting of daughterboard in the head)
- Microprocessor capable of 3-order motion
- On board USB hub, only 1 connection required to the computer
- Capable of driving up to NEMA 23 motors for X and Y-axes
- Able to reconfigure controller without having to compile new firmware (like Smoothieware)
- Built-in vacuum sensors
- Built-in protection against solenoids
- Capable of running up to 4 nozzles
Besides the hardware challenges of pick-and-place machines, I think having our own control card would bring additional benefits:
- The firmware could be pick-and-place specific. No need to have a bunch of extra stuff related to 3D printers or laser cutters cluttering things up. Updates could happen faster.
- Tighter integration with OpenPnP could make setup much easier for new users/builders.
What other major features should this motion controller have? It's my understanding that the Duet3 has a web interface for configuration, would that make setup easier for new users/builders?I am interested to hear any discussion points people have about this topic. Are there additional features required? Do you think such a controller card is warranted? I feel certain it will happen at some point. Are we ready for it now?Lance
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/1260cb7e-863c-45c2-9e16-7fde92e81611n%40googlegroups.com.
勇気とユーモア
If you want to mass produce PnP machines, then of course a dedicated board makes sense to reduce costs and perhaps simplify wiring. However, unless you are making at least a thousand machines, the costs of development and small production runs make a dedicated solution expensive, and a general purpose board such as Duet or Smoothieboard will be more economical, even if it offers some functionality that you don't need.Looking at your wish list:
- Mother and daughterboard pair (to allow remote mounting of daughterboard in the head)
- Microprocessor capable of 3-order motion
- On board USB hub, only 1 connection required to the computer
- Capable of driving up to NEMA 23 motors for X and Y-axes
- Able to reconfigure controller without having to compile new firmware (like Smoothieware)
- Built-in vacuum sensors
- Built-in protection against solenoids
- Capable of running up to 4 nozzles
Duet 3 MB6HC provides all of those, except for the on-board USB hub and built-in vacuum sensors (would you really want the vacuum sensors on the main board anyway?). Duet 3 Mini likewise, except for the ability to drive Nema 23 motors.I guess you might want to make a new head-mounted board to drive multiple small motors, to more easily handle a head with 4 nozzles. The options currently available from Duet3D are the Tool Board 1LC, which has just one motor driver; and the EXP3HC, which has three high-current ones and is therefore quite large. You could design a new head-mounted board based on the Duet3D EXP3HC expansion board design, but use TMC2209 drivers to reduce cost and space, and leave off any other parts that you don't need.Or perhaps the 4-nozzle solution you had in mind was an IDEXY configuration, with two heads moving independently in XY having two nozzles each? IDEXY 3D printers already exist (using Duets); maybe OpenPnP can support this arrangement too?Bear in mind that now is not a good time to be designing new electronics that uses microcontrollers or FPGAs, because these are getting very hard to source. Lead times for many parts are around 1 year.
You might be able to buy a few MCUs for prototyping, only to find that none are available when you want to manufacture.On Sunday, 23 May 2021 at 18:36:28 UTC+1 lance...@gmail.com wrote:It seems to me that the specifics of a pick-and-place machine warrants its own motion control card. The combination of high accuracy and high speed is unique to pick-and-place machines. And the number of motors being driven is higher than most applications. Jarosław Karwik has already done some really promising work:https://groups.google.com/g/openpnp/c/oRY0dIKeIDw/m/jSIt2YEWCgAJThe existing motion controllers have certainly gotten the job done and those pros and cons can be found here:But in the end, all those cards were designed as general cards or even aimed more towards things like 3D printers. And I think we are all aware that pick-and-place machines come with their own specific challenges.My friend and I were discussing what that controller should look like and here's what we came up with:
- Mother and daughterboard pair (to allow remote mounting of daughterboard in the head)
- Microprocessor capable of 3-order motion
- On board USB hub, only 1 connection required to the computer
- Capable of driving up to NEMA 23 motors for X and Y-axes
- Able to reconfigure controller without having to compile new firmware (like Smoothieware)
- Built-in vacuum sensors
- Built-in protection against solenoids
- Capable of running up to 4 nozzles
Besides the hardware challenges of pick-and-place machines, I think having our own control card would bring additional benefits:
- The firmware could be pick-and-place specific. No need to have a bunch of extra stuff related to 3D printers or laser cutters cluttering things up. Updates could happen faster.
- Tighter integration with OpenPnP could make setup much easier for new users/builders.
What other major features should this motion controller have? It's my understanding that the Duet3 has a web interface for configuration, would that make setup easier for new users/builders?I am interested to hear any discussion points people have about this topic. Are there additional features required? Do you think such a controller card is warranted? I feel certain it will happen at some point. Are we ready for it now?Lance
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/14aca136-33be-4567-95bd-dd338b0109b5n%40googlegroups.com.
勇気とユーモア
I can relate highly to this thread. My certified designs had the STM32's in it go out of stock until 2022, so I had to redesign and purchase a years worth of a different, yet available STM32, two days later those chips went out of stock world-wide!!
Crazy times....Peter.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/9bf5fcd7-8a95-4be6-b4b4-74296d83baf1n%40googlegroups.com.
勇気とユーモア
It was the STM32F411 in LQFP, now is the STM32L072 in LQFP.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm44q7KgU_WnXs_F16d04yTq%2BBJv29nfEczQuhmzwT7H0Q%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/81862995-fe3f-40c2-bd58-083710b3cbban%40googlegroups.com.
Please consider incorporating Pololu style 16 pin dual inline stepper motor driver board support.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEm8oERQ-nHj4t5my47c-HiaFsZcKRTaaeXZoA%3DB4zsH%2BFfinw%40mail.gmail.com.
勇気とユーモア
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/1a7c5ead-ffbe-4e5b-a1eb-b3f55c139d10n%40googlegroups.com.
勇気とユーモア
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm4-08N%2Bug3_onD0BHnYQFx%2BQ90ftc7a9HU7MsZ%2Bvyk-8Q%40mail.gmail.com.
“Until I blow a drive, then how do I fix it?”
In the context of this group, it really is not difficult to replace a small surface mounted chip...
Until I blow a drive, then how do I fix it?
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNxKN9%3Dfde%2BjYG9c0EmaJKTr_051NtqzQU5poPxQs4A3iQ%40mail.gmail.com.
勇気とユーモア
Is it easy to blow one of the more modern ICs today? I've made
many mistakes and never blew one from outside connections.
However, I did blow one, when I inserted a stick the wrong way
around. Luckily the board survived. So in my book there is no real
"for dummies like me"-advantage to have sticks. ;-)
It would be nice though, for a board to break out the step/dir
pins etc. and to be able to disable the on-board driver (if it
matters), so one can attach external drivers. There are valid
reasons to do so (cabling, special purpose drivers, motor
integrated drivers, etc.).
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNxKN9%3Dfde%2BjYG9c0EmaJKTr_051NtqzQU5poPxQs4A3iQ%40mail.gmail.com.
Is it easy to blow one of the more modern ICs today? I've made many mistakes and never blew one from outside connections.
However, I did blow one, when I inserted a stick the wrong way around. Luckily the board survived. So in my book there is no real "for dummies like me"-advantage to have sticks. ;-)
It would be nice though, for a board to break out the step/dir pins etc.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/46a160f6-5970-4840-1290-00b30f931fdf%40makr.zone.
勇気とユーモア
I would strongly recommend to add Ethernet support as USB has lots of limits,
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/81862995-fe3f-40c2-bd58-083710b3cbban%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/40937fa7-6636-4841-bc2b-34bc8bd6ceb6n%40googlegroups.com.
Can Ethernet be made as fast as USB (low latency) on common MCUs?
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXwbwJ9QSbMMo7n3qOtM8GgZudqVuFJVAJs24zOGnYVr9g%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/4c401874-005b-2217-6235-cb012ecc5cca%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/4c401874-005b-2217-6235-cb012ecc5cca%40makr.zone.
Then I guess Ethernet is definitely the better choice due to
inherent isolation.
Otherwise an on-board USB isolator or other means of isolating
from the machine rails, seems necessary, at least for a
trouble-free setup with no special care about how many plugs away
your computer is connected to the mains and how long the USB cable
is. Just based on some very simple calculations with expected
current pulses, bulk capacitor ESR and lead/connector resistances
(not even taking inductances into account). A fast PnP is not a 3D
printer.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAC%2BEaogqOoN9%2B4VQGKpk7J_YJEnohXDhH1Upp7E4j41KzcJk%2Bg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/86cecd09-371f-9382-15cc-8cde7d9e42a9%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CANp6H3SQv4BHH2VaRShuNSDAaUff08c6fV5dhdbfZTJoOMSkPg%40mail.gmail.com.
Hi Juan,
When I started, I also thought that more current is the
key for better speed. But that is not the case, at least not for
common stepper motors. It is more voltage, that is the
key.
The reason is so-called Counter-electromotive
force also known as "back EMF" that builds up at higher
speeds.
So I bought these relatively high current drivers, but they can't
put that current through the motors, because of the back EMF. In
the scope shot below you have roughly 1V=1A scale, the motor only
took a few hundred mA at best speed with 24V (it was a test rig so
take the absolute numbers with a grain of salt, but the principle
is still valid in relative terms for a real machine):
See also here in the "Higher Voltage, please!" section:
https://makr.zone/choosing-a-motion-controller-the-panucatt-azteeg-x5-gt-32bit/455/
So unless you have special low inductance steppers or something, go for higher voltages, 48V, 60V!
A good text and illustrations here:
https://www.designworldonline.com/improving-high-speed-performance-of-hybrid-stepper-motors/
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cP-BAYO6h%3Dv_mLCucAqVYqq%3D9wfjqMSJqstzKUKBJCCLg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bb84d9a8-0441-ff06-9b04-c4413189546c%40makr.zone.
Hi Juan
> Which motor are you testing on?
I don't remember which one exactly it was, sorry. I tested Nema17
and Nema23 motors.
> Are you saying that more torque does not translate to higher torque at higher speeds?
If you're talking about adding a more powerful motor, then it
depends. You need the torque curve of the motor to know.
I'm just saying that having twice higher voltage will likely bring you more speed than having twice higher current rated motors/drivers.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cN7jBsXHz%3D5nTLbxUN0_qaw%3D6MSOMcy6tAE5_7ymEUkKw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/09b28d04-e790-957f-ee56-194248cc5d17%40makr.zone.
> Microstepping when accelerating is a waste of torque,
Yeah, I read the data sheet of my driver, but that's only a few percent.
Increasing voltage almost proportionally increases the
obtainable speed!
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cPKnmaRL4HCsMsFUu%3DLCogCM%2B7F0SXenYLGDcu_LN%2BB_w%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/0ac6ec43-d416-ae14-bfc5-ac7ec833c3b3%40makr.zone.
@Juan, I must have missed that question.
> Could it be that the build up EMF in the coil does not have time to leave the wire when pushing 128microsteps?
No. This is just a curve interpolation. Microstepping makes it
smoother but not altogether different. It is true that
full-stepping can increase the torque at high speeds a bit by
"squaring" the curve, which gives it a slight power edge in the
corner.
From the Trinamic Application Note 001
2.5 High Velocity Optimization
At high velocity, the motor resonance must be kept low, in
order to maintain torque as high as
possible. Microstep waveforms play a reduced role, as the
waveform cannot be maintained in this
velocity range anymore (see Figure 2.2), getting worse with
each increase in velocity. Fullstepping
sometimes brings a few percent increased motor torque.
https://www.trinamic.com/fileadmin/assets/Support/AppNotes/AN001-SpreadCycle.pdf
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cMU1LvUwz0UO_zU6p9SC%2BWU%2B4tHSSMBbGNtiq56Q3Z8DQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/01865b61-a1d6-27d2-6986-283f6bfb3576%40makr.zone.
Hey Mark
This is a big topic for CNC Machining. My CNC router I drive my steppers at 48v, they are NEMA23’s on the X/Y and a NEMA34 on the Z
Gecko has a good writeup on this if interested
https://www.geckodrive.com/support.html
They also have the calculations on how much a Stepper can take in voltage
The basic gist though is Speed=Voltage, Torq=Current
As Speed goes up, Torq goes down and visa-versa.
In a PnP machine you need enough Torq to handle the load of the gantry both in acceleration and deceleration. Otherwise you can use the voltage to increase the speed.
Also of course is a trade off with Microstepping, the higher your micro steps you also trade off torq and speed. Optimal is of course full stepping, If your using Belts and gears to have a higher ratio. You can full step a motor with a 10:1 gear ratio and achieve the same thing as 10 Micro steps but loose none of the motors speed and torq ability, you fact gain more torq due to the gearing
Sandra
From: ope...@googlegroups.com <ope...@googlegroups.com> On Behalf Of ma...@makr.zone
Sent: Thursday, May 27, 2021 10:39 AM
To: ope...@googlegroups.com
Subject: Re: [OpenPnP] Re: Motion Controller Designed for OpenPnP
Hi Juan,
When I started, I also thought that more current is the key for better speed. But that is not the case, at least not for common stepper motors. It is more voltage, that is the key.
The reason is so-called Counter-electromotive force also known as "back EMF" that builds up at higher speeds.
So I bought these relatively high current drivers, but they can't put that current through the motors, because of the back EMF. In the scope shot below you have roughly 1V=1A scale, the motor only took a few hundred mA at best speed with 24V (it was a test rig so take the absolute numbers with a grain of salt, but the principle is still valid in relative terms for a real machine):
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bb84d9a8-0441-ff06-9b04-c4413189546c%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/4c401874-005b-2217-6235-cb012ecc5cca%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b620a9fb-db65-4e9d-897c-cf0f56df1506n%40googlegroups.com.
I'm sure you're aware that you cannot directly interface such an
MCU breakout with harsh machine signals, let alone drive valves
and pumps directly. You will likely need to design an interface
board, which does all that.
Like Bill Ruckman did, also for the Teensy 4.1:
https://groups.google.com/g/openpnp/c/RL_TUvs_vSQ/m/nO-41LVxAwAJ
https://github.com/bilsef/teensy4_pnp_controller
https://github.com/bilsef/Marlin/tree/Teensy4.1_PnP_6axis
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/fdc0ab9b-fcd4-081e-a8f8-b0bff3c8f0ca%40gmail.com.
> Saying you loose precision using full steps is not
really correct. You can't rely on micro step positioning for
accuracy.
In the context of PnP, I disagree ;-)
For PnP the precision-relevant axes are X, Y and C. These axes
are not loaded in still-stand, i.e. there is no force or weight
opposing the positioning. Therefore the micro-stepping will be
accurate as long as the electromagnetic forces can overcome the
friction. This might of course be very different in other NC
machines such as mills etc.
I just coded an automatic backlash-compensation calibration for
OpenPnP (coming soon), which (implicitly) tests the accuracy of
positioning. My machine has 16 micro-steps, resulting in 80
micro-steps/mm or 0.0125mm theoretical resolution. The calibration
determines the needed backlash compensation offset, in order to do
so, it has to repeatedly position from the other side (at
different decelerations) and measure the distance, using the
camera. The camera has a resolution of ~0.024mm/pixel, so the
limit is the camera. Within that camera tolerance, I see perfect
positioning from the other side after the calibrated backlash
offset of ~0.11mm is applied.
I agree, this is not a formal proof (not testing the linearity),
but unless this is an unlikely coincidence for the two sides to
meet, it is quite safe to say that at least down to 8 micro-steps
this works as advertised. I will do more tests...
Having said that, there is certainly a limit to the number of
micro-steps. More than 16 micro-steps will likely not increase
accuracy. Higher micro-step numbers can still make sense to (as
you said) smooth out the motion and to reduce vibrations and
audible noise.
Also interesting (not quite the same topic):
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b620a9fb-db65-4e9d-897c-cf0f56df1506n%40googlegroups.com.
> Not
the speed per se. So it is the torque at high speeds?
I was always talking about this, yes. ;-)
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cPsL6V9GEYh_HPph_5nH729DirxH-tA8nxWAtbWCQ6scg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cMNAXrTU0kj%3DZRChU5G%2B%2B%2BKF7%3Dwia-m4tvJTR-94mmCWw%40mail.gmail.com.
Another video, more practical:
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b5c5b997-c04d-bf25-fb91-71af9dd8935b%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/65099333-c7a0-b63b-e9c6-aa233c4c5375%40makr.zone.
It has been A while since I took a look at smoothieware. @ArthurIs it true that the acceleration and jerk control is all based on the step per mm. variable?
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cOLUnKxwSa331oi5pcpZ-6EU6u-riuEz1YE_p_ri-mzVQ%40mail.gmail.com.
勇気とユーモア
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm7wgg57WPjVDarMwVdJdi7hLJeTW2oJNbFbUsVz%3DuFZfQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm7wgg57WPjVDarMwVdJdi7hLJeTW2oJNbFbUsVz%3DuFZfQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cNaW1cOEyebuKAuUCF5HR%2B35XpHRPsXU1SHf%2BZrH9M-iw%40mail.gmail.com.
勇気とユーモア
Theoretically, Smoothie can already do that with Trinamic
drivers, not on its own, but through G-code: Before a long &
fast move you could first move to a modulo microsteps = zero
position, then configure the drivers for full steps (that's
possible through G-code), then fast-move near to almost the target
position, again to the nearest modulo microsteps = zero position,
then re-enable micro-steps and move the last tiny bit to the
precise target position.
This would also circumvent Smoothie's step rate limit of I think ~100kHz.
The Trinamic Application Note says that's only worth a few
percent. Not sure if you would actually lose the advantage with
the overhead of these pre- and post moves.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm7tMcidjQQSknYEtmm9kUxm6i-zwq_NxE5vRanTC_Kh7g%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/de366262-32ed-3c51-70a6-cc4a14d16a38%40makr.zone.
勇気とユーモア
I guess nobody is debating that closed loop steppers (or even
better: closed loop servos) are better. But they are also more
expensive and more complex to setup.
And if you want to drive them in "as fast as possible" mode (i.e.
the feedback determines the speed), it becomes very complex, even
without axis coordination. With full axis coordination (i.e. the
feedback of the weakest axis determines the overall coordinated
speed) I have yet to see a system.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2B7Q0cNLt8wJUkU_Yg7GtPtSeQSX1OmAELYKaxC%2BNkKcYyiXqQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/8b269131-7722-fd17-2aec-1edf61c47d8a%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNy9VEVc8V8bKUrAgAyMVWgsyF%3DSchYOnco_NzidHhxnMQ%40mail.gmail.com.
勇気とユーモア
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm67UEVmQGPE9Gu1KObD4iZ%2BxFaW1iDt66i34hvBPWoi6g%40mail.gmail.com.
> accelerating at 2500 mm/sec^2 gets us to 667 in .2668 seconds?
Yes.
The only odd thing here is the 80 steps per mm. They are
irrelevant for this question. ;-)
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNy9VEVc8V8bKUrAgAyMVWgsyF%3DSchYOnco_NzidHhxnMQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNypgC05qNcZSHBXWFKTY5a47gbB9Za2pDFv-BmJMipWzA%40mail.gmail.com.
勇気とユーモア
> or 2500 times delta t equals 666. Or delta t equals 2500
over 666
> So 3.753753754 seconds to reach top speed
No, Bert got it right it is 667mms-1/2500mms-2
= 0.2668s
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm7GBNoY7yJU_NdXCbo_aw1vL5DrJxKBpFv%2BSOcaP6_GHw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/d11ba6ce-d7fb-3518-6671-b91e39d69642%40makr.zone.
勇気とユーモア
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm6sA2doBhD%3Dd0MQK5UBtr486svU5TzL%2B6GUMzZtH0eQtg%40mail.gmail.com.
it's cheap, and it doesn't have downsides to worry about.
Yes. But it can be further differentiated for PnP: Only the X and
Y axes are power/speed axes. The Z and C (rotation) axes can be
driven by just any driver, I guess. So if you got a controller
that has some drivers on board but then also breaks out two
step/dir pairs (or other, more advanced means, like CAN), then I
guess this is the optimum. You can then put the board on the head,
it remains compact and light and lower cost per (on-board) driver.
Then for the X, Y motors you can choose what you like for drivers
and (different) voltages. Assuming the usual Cartesian
coordinate robot, you can even place the driver at the X
motor, so you only need tiny signal cables plus power bus (plus
USB) in the drag chains, which makes cabling lighter, less stiff,
and - if we're speaking truly drag chain rated cables - much
cheaper (compared to when you have all the thick current-rated
motor cables coming from a base/central controller).
_Mark
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAJ8BjHPoQ4m3xw-BOm1XWmSvWhhaQOdt3S5vcVNHEtT5gcHsjQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/1187e3e4-8f86-40aa-6e4f-2723f76286aa%40makr.zone.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/1187e3e4-8f86-40aa-6e4f-2723f76286aa%40makr.zone.
Hi Harjit
> So, if this is the case, then, the motion plan could be sent across the common bus. Each motor/actuator driver will pick up their piece and execute it. But then this means that the motor/actuator driver has to do all the motion profiling and error handling?
The distribution of the motion plan to the different drivers is
taken care of by OpenPnP. It sends the planned moves to each
driver which talks to each controller using e.g. G-code. The
controller itself may take the G-code commands and is responsible
for axis coordination etc. It may delegate some of the motion to
daughter boards over CAN, e.g. Duet 3 can do this (cool!). As an
alternative, the controller can just generate step/dir pulses to
external drivers. Many different types of drivers can take
step/dir, even servos.
All the real-time coordination is the responsibility of the
controllers. OpenPnP only takes care of the high level (G-code)
commands. It can (roughly) coordinate motion across multiple
controllers, timing moves on the various controllers to match i.e.
giving them the right acceleration/feed-rate limits, so the moves
should roughly be coordinated, i.e. way-points will be reached at
roughly the same time.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEm8oESMou68%2BwVW44hKF%3Dbj2yQcq75TEpua2vGsmudMJm29GA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/eb6f7f13-d32c-6063-a13f-a28ffabae982%40makr.zone.
@Harjit
Ideally, the controller (not OpenPnP) would do the S-curve or 3rd
order motion control (I think you imply this as well in your
text).
Unfortunately, there are no open source controllers/firmwares that I'm aware of, that can support true 7-segment 3rd order motion profiles. So like you found out, I added a interpolation solution on the OpenPnP side. It can currently drive Smoothieware and Duet controllers with good results. Other constant-acceleration controllers may work too, if they have fast USB/other communication. Vibrations on my mechanically not so fancy machine (Liteplacer) can be very effectively suppressed, while keeping good overall speed.
TinyG has simplified S-curves built-in. But they are not true
7-segment 3rd-order motion profiles, more like 5-segment, i.e. it
cannot limit acceleration in addition to jerk. So you need to set
a rather low jerk limit, otherwise the steppers will stall,
because the acceleration becomes too large on long moves. I think
Marlin has a similar simplified S-curve implementation with the
same problem.
The resolution would be a true 7-segment controller. Some members
on this list have announced such controllers, but I have never
seen one completed.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEm8oERuZ_%2BXt1_e1N%3DD7kXZm6NZUCGo9-92VFnX-mQXnaRi%2BA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/db414cf5-f455-af31-829e-18b70a8fc530%40makr.zone.
Explanation here:
But gotta go now.
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEm8oETR%3DZ%3DjQYSVmnYx6oN7F-2RSyEmtMgsn-MxaQgTijebfw%40mail.gmail.com.
I'm sure you're aware that you cannot directly interface such an MCU breakout with harsh machine signals, let alone drive valves and pumps directly. You will likely need to design an interface board, which does all that.
Like Bill Ruckman did, also for the Teensy 4.1:
https://groups.google.com/g/openpnp/c/RL_TUvs_vSQ/m/nO-41LVxAwAJ
https://github.com/bilsef/teensy4_pnp_controller
https://github.com/bilsef/Marlin/tree/Teensy4.1_PnP_6axis
_Mark
Am 28.05.2021 um 10:46 schrieb Peter Homann:
Hi Mark,
It's why I've chosen a controller based on the Teensy4.1. It uses an ARM Cortex-M7 at 600 MHz. This is probably the fastest processor around at the moment being used for grbl.
I'll be be running grblHAL on it. The developers are extremely responsive. The advantage of grblHAL over grbl is that the software is split into parts,
- Core - Main grbl functions
- Drivers - Hardware abstraction layer for various processors/boards
- Plugins - Modules for adding user specific functionality
I've convinced them to add a OpenPnP plugin. :) Currently it is implementing some of the M codes needed to support OpenPnPOnce I get my machines axes converted, I'll start doing some serious testing.
I initially planned to use a Duet2 WiFi board I have, but it didn't have the step rate (100kHz+) needed for my machines servos. Additionally, a 3D printer specific board is so problematic, no opto-isolation on inputs/outputs. Paying for onboard drivers that I won't use, etc. It's a great board but not suited to my PnP needs. I know that there are new Duet 3 variants now with add on boards, but it ends up being quite an expensive solution. What may interest me in the future would be if there was a basic Duet3 processor board that I could plug into my own motherboard, as I really like the way they to their configuration via a web interface.
The Teensy4.1 is very powerful. The form factor means that I can plug it into a purpose built motherboard with the appropriate interfaces for my 24Vdc industrial I/O. A lot of the I/O on PnP machines is relatively slow, Relays, light sensors etc. These can be interfaces via SPI I/O expanders and the like. Or by a separate grbl controller.
Trying to build controller boards that cater for all sorts of uses, 3d printers, CNC machines, PnP machines, means that no-one will be completely happy with the result. They all have there good and bad points. As an example, my machine has 3 vacuum sensors, one for each head. They are connected to a small analog interface board that outputs 2 bits / sensor. The 2 bits represent the vacuum level as none, low, medium or high vacuum. So having analog sensor inputs on a controller board is of no use to me. I need 2 digital inputs per sensor on my board. I plan to add a plugin to grblHAL so that when openPnP requests the analog value, it will read the digital inputs for the Vacuum sensor and convert it to a value of 0,1,2 or 3 and return that
Once I have converted my machine to OpenPnP using the Teensy4.1, I'll look at making a number of general purpose mother boards, based on my working knowledge of openPnP. I'm really excited to see how well grblHAL integrates into the openPnp architecture.
I just need to get the basic conversion setup and operational.
Cheers,
Peter
Thanks.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/14aca136-33be-4567-95bd-dd338b0109b5n%40googlegroups.com.
--
勇気とユーモア
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/81862995-fe3f-40c2-bd58-083710b3cbban%40googlegroups.com.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEm8oERQ-nHj4t5my47c-HiaFsZcKRTaaeXZoA%3DB4zsH%2BFfinw%40mail.gmail.com.
--
勇気とユーモア
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/1a7c5ead-ffbe-4e5b-a1eb-b3f55c139d10n%40googlegroups.com.
--
勇気とユーモア
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAMHZkm4-08N%2Bug3_onD0BHnYQFx%2BQ90ftc7a9HU7MsZ%2Bvyk-8Q%40mail.gmail.com.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CA%2BKNHNxKN9%3Dfde%2BjYG9c0EmaJKTr_051NtqzQU5poPxQs4A3iQ%40mail.gmail.com.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/46a160f6-5970-4840-1290-00b30f931fdf%40makr.zone.
--
勇気とユーモア
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/40937fa7-6636-4841-bc2b-34bc8bd6ceb6n%40googlegroups.com.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/CAEfPpXwbwJ9QSbMMo7n3qOtM8GgZudqVuFJVAJs24zOGnYVr9g%40mail.gmail.com.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/4c401874-005b-2217-6235-cb012ecc5cca%40makr.zone.
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/fdc0ab9b-fcd4-081e-a8f8-b0bff3c8f0ca%40gmail.com.
Similar basic idea as @bilsef's but then also quite different:
_Mark
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/c3cf38bd-44a4-442d-88da-bb2e1c691b8fn%40googlegroups.com.
Yeah, it is crazy - especially with components. These days even highest priced STM32H7 are hard to get...It does not help that people started buying components like never before - I have myself bought vital parts for next 12 months of my production. So the shortages will last, but not forever (saturation of stocks will happen at some pint). I can already see some light for the next year.In my case the controller is part of commercial project - I need my own board with some specific features ( I design electronics for industrial ink printers).When doing it - I have realized that the design is pretty good match for pick and place machines :-) and I decided to share.It still does not work - mainly because I have to finish first one high priority design for my biggest client.About the features - I would say you need ethernet ( even if you keep USB). There are too many cases USB is troublesome, while ethernet works flawlessly.In my design I use ethernet to master board ( with possibility to use USB), remaining boards are connected via high speed CAN - FD .
--
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 view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/14aca136-33be-4567-95bd-dd338b0109b5n%40googlegroups.com.
--勇気とユーモア