Robotics and CNC

Recommendations for CNC machines

If you need advice on search engines to use, mechanical components or how to assemble them and buy them, Please contact Fabio di Arezzo which in recent years has gathered a lot of experience on CNC milling and engraving machines with lasers.

In upcoming pictures you can see some of his achievements. Clicking the images get bigger and you may notice that are combined machines, that is, that you can mount either a laser that a cutter.

Write to Fabio for recommendations, to buy together components or to make you procure from him of the kits of components. Or you might even agree to build parts or complete machines.

Mauro Radan is also experimenting with different versions of parallel grippers. His mechanics are designed very well. This is a version with high power servo. These servos are not suitable to write because of their dead band, but are great for catching and lifting objects. The two servo at the base and the very robust construction, heavy enough to lift objects.

– – – – – – –

One of the first prototypes of ThereminoArm. This version was still a Master and a Slave, because the first Master did not have configurable PIN. Now you do everything with just Master and advance even two pins. The April update 2017: the new firmware of the Master, increases the number of pins to 6 to 12, so now they advance eight pins for general purposes. Also new firmware may also drive the stepper motors.

You can then build very precise robot arms using small stepper motors and belts. I recommend using a very high reduction ratio, at least five but better if you manage to get to ten. In this way the 200 steps per revolution will become 2000 steps per revolution and you can get an accuracy of 0.7 mm with half-meter long arms. Accuracy that will increase to about one-tenth of mm and above using the microstep.

– – – – – – –

A Robot is not necessarily an articulated arm. With a little’ fancy, You can compose simple and efficient machines.

A robot “instructional” built by students of the Institute ’, C. of Corniglio

The Institute's proposal, motivation i.c. Corniglio is: “…join the digital world with the real world and concrete” and that's precisely why is born on system Theremino. A warm thanks for your research!

Sketch and Firmware

Many after learning the language Arduino sketch, they wrote that they would like to use it, for Theremino. Unfortunately the language sketch was thought, only dell processors ’ Arduino and transplanting it on other “micro”, would become so different, to lose any possibility, Exchange programs between the two.

Our PIC programming in C or C++, using an IDE standard and standard compilers, We use GNU Compiler, It is Open Source.

As far as the huge popularity of Arduino, It can make us look “several”, in fact quite the opposite is true, is Arduino using a nonstandard language, made especially for Arduino and valid only for Arduino.

Sketches are not true firmware programming, but a simple programming, that hides all the “outline”. With the sketch, l ’ efficiency is the ability to maneuver, are limited.

In addition to a didactic deformation sketches, you learn to use an abstraction of micro, instead of the micro itself. To learn how to use a micro, You should consider the data sheet of the manufacturer, not the instructions of Arduino.

That being said, Luckily, the system firmware Theremino, requires no programming. We are in 20xx and supposedly the InOut a PC, as well as the firmware of a mobile phone, or a washing machine, are working. “How are”, without having to re-schedule every time, Depending on whether you want to wash shirts, or blue jeans.

Shift of perspective

The shift of perspective, between Arduino and Theremino is in fact, move the ’ intelligence from the firmware to the software. This shift multiplies per thousand the available speed, the computing power, the memory, and the ease of programming.

Many devices, like printers, monitors and mice, they are constantly connected to the PC and all they find “normal”. Yet many people think that a “device”, such as a robotic arm, or a 3D printer, should be autonomous, and probably a pile…

Robotic arms and intelligence

We do l ’ example, watch case, a “robotic arm”. Many manufacturers of robotic arms Arduinici, they realized that their arm “battery powered standalone”, in the end he always does the same thing. What he's missing? Communication and software, powerful algorithms that keep in touch 3D data, with the outside world, sensors, Webcams, microphones, understand the GCode, and communicate with other applications, in real time.

Micro are not designed to handle 3D files, or decode audio signals, do not have adequate power, to play midi files, or decode the video of a WebCam. And even if they are forced to do so, the hurt. Said with other words: “The appropriate place for the brain, It's not close to the muscles”

Another reason, that makes it very smart, connect firmly the arms and 3D printers to your PC, is that you have to supply them power. When you exceed the phase toy, power needs, become too heavy, for batteries.

How are the professional robotic arms ?

Have big cables, that carry power and data.

Communicate constantly with a hub PC.

Contain only the firmware, intelligent algorithms, they're all on PC.

Click on the image, for a better look.

Which language to use?

Once you have decided to move the ’ intelligence, from the firmware to a high-level language, which is the best language to learn?

Here is a matter of taste, Some say that only exists on C++, and treat with contempt, every other language.

Other, like us, think that C++ is a language older, that requires much more time and energy, recent languages. And they also think that C++ and similar (C, Java and all languages with the semicolon to each row) formal languages are poorly structured and poorly, that invite you to write, so “dirty” and confused. In these languages, you can write, things acceptable by the compiler, but absolutely unreadable, for humans.

We prefer more structured languages, that help to write well, and to minimize errors. This process of gradual estrangement, from machine language, is underway for fifty ’ years and with each new step, c ’ is anyone who complains and complains about the old languages. But the process will continue, and eventually we'll get to program, in human language. Currently the human language is VbNet.

As the modern languages (VBNET and C #), they have a power and impressive speed, because their basic functions, are not rewritten every time from scratch, but are instead ready in “Runtime” and written with optimized algorithms, and adapted to the operating system.

A second advantage of modern languages, is to be independent of the operating system. An application written in C # or Visual Basic, runs without changing a comma even on Mac, Linux and Unix. (This in theory… in practice only on Windows works fine, While on other operating systems, implementations are incomplete and full of errors)

In conclusion we We suggest using VbNet or C # (very similar to each other) Almost all applications, of the system Theremino, are written in VbNet, because we find it more “Human”, but you can easily switch from one language all ’ more, using SharpDevelop to translate.

Hello livio , I fitted a new electro spindle to my self-destructive cnc with its small reverses that has n a pwm signal with the following characteristics: 3, interface Terminal MACH3 supports PWM speed control signal outside entrance, external PWM input requirements: level 3.5-12V VPP, frequency 1 k-10 kHz, spindle speed control suitable for MACH3, (Note you need to disconnect the external control signal PWM XH2 potentiometer Thorn. 54-3 p is effective or cannot be controlled).
I tried to configure by the book's legs 11 E12 but I can't get it to work automatically . from the hall I don't know what kind of leg I enter, If kindly you can
Aid to the various operations by writing configuration specifically ka x. Thanks Joseph
Inverter has two legs and the other one that says pwm gnd

You have to connect both GND that SIGNAL
The Pin you use to get the signal goes configured as FastPwm
The frequency of FastPwm should be set from 1 KHz to 10 KHz (set it to 2 KHz)
Then you have to press the button “Duty cycle from Slot”
And you have to set the right Slot.
If you can't write me at engineering at sign theremino dot com and we'll hear over the phone.
Hello
Livio

Good evening, my name is Joseph's for a while now I dabble with a little homemade cnc. I wanted to tell my experience regarding the theremino master and its software theremino cnc.

Before entering the world of theremino I flew my cnc with Arduino and its respective grbl controller software, cool see it working, the problem arose when I had to pause the job, adjust some parameters of adjustment for the x axes, y, z, to restart the piece from a point at my own pace, all this was not possible and therefore I trust to luck that work so well, but I happened to redo the same work more than once, not being able to fix the car in progress…

Finally with the discovery of theremino I fixed what wasn't possible with Arduino, now read work machine with theremino, as well as being a cool, is a safety at work don't make a second time. Theremino CNC is a terrific control software, There is nothing that you can't do, by adjusting the parameters of the respective axes, the spindle speed, at the start of the tool from a particular point and much more… and the most important thing was the availability to configure the right parameters with the staff of theremino, that gave availability via telephone x a number of adjustments concerning the loss of distance, caused by grounding and other, Another thanks for your work.

Hello Livio, Finally in a few days I will have the aluminum panels for mounting permanently the CNC.
I could use some advice, prior to the final Assembly, to verify exactly what creates a progressive loss of steps in Z.
A question: But a G-code can affect the performance and accuracy of a CNC?
Wonder why the defect occurs even when cutting the air.
I add… to test I used Automation by creating a small loop to generate movement on the three axes to finish to take a measurement of the Z axis on the micrometer and start again. After a course of 40 minutes all in fast motion, (I don't know how many dozens of measurements carried out but I think 70 or more) the second hand of the micrometer was always in the same position.
I think even if now there are big mistakes is CNC wood mechanics, but gradually losing in Z seems strange.
However short, don't, don't run and again the correct wiring.
Thanks and see you soon.

Did you use Theremino Automation always with Master outputs are configured with the true Steppers?

If you did so and there was loss of distance then STEP and DIR signals and the Driver does not have problems. Nor ThereminoCNC can have, because he passes from the slots and if the Slot is at zero, the tip should be where it was at the beginning.

Your only option is a loss of distance due to too much speed and/or acceleration but still closer to vibrations. Increases micro-steps to decrease vibration and, If possible, interponi a toothed rubber belt, to uncouple the motor from the crowd that he controls.

Yes, with the configuration as stepper.
I'll try to increase the micro-steps to 1/8 to see the trend.
to 1/4 is a little jerky. In XY is impressive precision. I split the penny.
See you soon.. Thank you.
just getting ready to publish photos and videos.

Hello,
I recently discovered the system Theremino
and I am venturing to build my first CNC.
I need a manual axis with a magnetic or optical line
to control its position.
You can link it to Theremino?
If you can, You can also store the coordinates of a given point?

I switched on the CNC and everything is ok.
I just can't move without gcode.
For example: to go and tap manually a wall already milled,What do I press?
CTRL + arrows moves but 0.01 at a time
There is a button that does’ move your CNC until is pressed?

If you use the arrows by themselves move with speed “Jog speed normal”
If you use the arrows + SHIFT move speed “Jog speed with SHIFT”
If you use the arrows + CTRL single step move by a tenth of a millimetre.

The rates set in the menu “Options”. The settings range from 1 to 100 and are percentages of speed “Rapid” that, ATTENTION, should never be greater than the MaxSpeed setting in application HAL.

In all cases you must first click in the window where you see the processing to enable the movements with keyboard.

Hello Livio, I have a CNC controlled by Theremino CNC machining fine,
You can make perfect recordings, I would like to improve the depth control Z axis to compensate for uneven floors he plans and PCB,
I discovered that there is a program called “Term autoleveller” that probe the surface of the PCB and calculates the difference of flatness correcting automatically the depth of engraving, to do this requires storing values of the Z axis of the various PCB poll points than the program itself runs ,now the question you ask is: would it be possible to store these values with Theremino CNC by extracting them or storing them on a file margari ?
I thank you in advance and congratulations for the great work of Theremino.
Franco

Good morning to all and congratulations for your project.
Long ago I had assembled a three-axis CNC machine (handmade Cabinet) piloted by a card-controlled Chinese Mach3 but I had great satisfaction. I then decided to upgrade all at Theremino.
I purchased the MasterDIL V4, the drivers DRV8825 and, as suggested in the Hardware section, a CncShieldV3.
I ask you, not having found, a description of connections to make between the MasterDIL and the Driver Board for driving correctly the three drivers without risking to send them up in smoke.

The links between Master and DriverBoard are simple:
– GND GND Master of the driver board
– 5V to 5 v Master of the driver board
– SIGNAL of the Master in DIR or STEP of the driver board

However, the links between the MasterDIL and the Driver Board hardly “they send in smoke”. The danger is all the side motors, adjusting trimmer, feeder… there don't have to miss anything. And attention that the CNC Shield must also be enabled.

Hello Livio, the problem for which I require courteous help is on the way to connect a spindle of a small CNC2018 the control electronics that consists of a Master unit and Theremino StepperDriver and, Consequently, How should I configure my software Hal and Theremino CNC.

The spindle ELEMANDER11 comes with own transformer equipped with diode bridge and with these specs:

In the documentation I couldn't find anything about it, I could probably have been too hasty, but from what I can understand from the characteristics of the StepperDriver should not be possible to do without a relay to control the electro-spindle.
I apologize for the possible naivete of what has been said but little time has elapsed since I started “Chew” CNC and electronics.
Thanks Livio for the time you want to devote to my request and compliments for the passion that all of you Theremino put in the many projects developed, never pull out the comparison and the support of those who resort to your assistance.

You could use a mechanical relay or a Optotriacs, the mechanical relay will work for sure without problems but may have a shorter life span (never mind cost little and after years I replace). The phototriac isolation is gentler and is not guaranteed to work well with the feeder spindle. Then the test would require a first phase optotriacs and tuning, but when in operation would last forever.

If you want to use the write me optotriacs and I will have to explain how to make the first tests.
I would now like to do, But if you are not clear write me.

The problem is that if the power supply is too crazy and not inductive triac could do open and close the circuit. And if the Triac were to close a single half-wave for a long time, could heat the spindle power supply transformer.

In addition, there is a damping network optotriacs (R5 and C3) He does spend some’ of current even when the Triac is open. This may prevent weak load turns off (such as low power led lamps).

To verify that everything is in place you should then put a meter in parallel and check on the power to the power supply is 220..230 volts AC. And that when off is very low, Let's say less than 10 volts AC. These tests are done with the AC adapter plugged in and turned on. And are done for a short time, maximum seconds, to avoid heating the transformer in case there was a single half-wave.

– – – – – –

The Pin-out of the Master you have to set it to the HAL as:
– Pintype = Dig_Out
– Slot = 11 or 12
Read page 42 the CNC application instructions to decide which Slots use.

After your exhaustive answer I think to implement both solutions, obviously at different times, first one then the other.

The mechanical relay, the more easily workable, would allow me to reach more quickly the objective of using the spindle with Theremino.
Do you have any special recommendations for the purchase of mechanical relay since the offer is so vast?

The ideal and ultimate solution remains the Phototriac isolation; I'll then ' Theremino V1 Optotriacs’ hoping to succeed, with your help and supervision, to overcome the necessary testing and tuning.

Proof that you described should be done with the existing Optotriacs in the connection, or do I get it apart?
I have to make two very fast voltage measurements on power supply transformer (then AC) in two separate conditions which I completely understood, I try to say what I understand:
The first transformer plugged in, everything under tension, and elettomandrino on.
The second measurement under equal conditions to the first but with the spindle off.
Thank you!

For the relay does not know what to advise you, just taking widely current and voltage, better at least double of both.

The test shall be made so:

1) Pull the plug from the mains.
2) Checks that everything is connected and that the switch of the spindle is turned on.
3) Hold firmly the tester connected in parallel to the power supply inlet of the electro-spindle.

4) Lift the control signal from the Master (see the led lit optotriacs).
5) Connect the power mains.
6) Watch the meter and must give 220 Volt about.
7) Pull the power supply plug from the mains.

8) Lower the control signal from the Master (see the led off optotriacs).
9) Connect the power mains.
10) Watch the meter and must give 0 Volt about (less than 10 volts).
11) Pull the power supply plug from the mains.

If all goes well then you do the same tests with longer and always leaving the network connected.
– Turn on the control signal and measure.
– Turn off the control signal and measure.

In all cases the switch of the Chuck must be always on. I don't know what would happen to feed the power supply without load. You could try it but beware that if the Triac closes in mid, and then measure intermediate voltages (for example, 100 volts), the power supply transformer could heat up.

Now it's clear how to test the Optotriacs.
All that remains is to get the necessary, to try and tell you about the outcome.
I hope they serve 30 – 40 shipping days for being able to show Theremino V1 Optotriacs, Meanwhile appronterò the cable to use the relay.
Thank you for having responded despite the Nice sunny day and celebration.

No problem for the holidays, We are makers doc and holidays are the best time to traffic without anyone bother.
If you write to make you thereminoshop Marley have in a few days: lello@thereminoshop.com

I purchased on ebay Optotriacs (in Thereminoshop you could not close the transaction) delivery times are reasonable, only a few days of waiting.
I asked myself the question where it was more appropriate to place the mechanical relay, then re-reading: ” …just taking widely current and voltage, better at least twice to both of them.” I guess you meant to be connected between the diode bridge and the spindle, where the values of voltage and current are 36 VDC and 10 A, the supply voltage of the coil then should be 5 V. …. but I find no mechanical relays that can fly 50 VDC at 20 A.
What am I doing wrong?
I agree that the holidays are the best time to traffic.
Thanks for your time and patience.

The current do 10 Ampere is too much for any relay, last no. Do you have to stop the 220. Then you should use a relay from at least 400 volts and at least 4 Ampere.

As long as it is possible to stop the 220 before the power supply, otherwise you are fried and the only solution is to identify if the power supply has a power-off logic control.

In all cases stop so great powers can generate strong and scintillamenti and then warning that the mass of the power supply is connected firmly to the ground, and that the PC is. Otherwise you could create over who may lose communication with the Master or, even worse, damage the Master or stepper motor drivers.

If you use the fototriac have to stop the 220. The Triac work only in alternating current. With the fototriac the scintillamenti will be reduced to zero because the optocoupler turns with precision to the passage of the zero (when AC voltage is zero). But, again, don't underestimate the need to make a professional harness with all GND connected permanently to Earth.

With “permanently connected” I mean that it is impossible to detach or attach plugs that carry also the Earth, When the mains voltage is connected to the system. Maybe use a power strip, upstream of all, with a switch to turn everything together, never stop ground connections.

Do not discard the mechanical relays, may be the only ones to funzionarti well. Maybe you didn't read well, I advised to use a relay from at least 400 volts and at least 4 Ampere, do not discard altogether the relays.

The phrase:
” … in all cases stop so great powers can generate strong and scintillamenti … “, together with the lack of logical switching off of the transformer, I would be forced to take other solutions.
Reconsidering what, again there is the problem of the choice of mechanical relays, that, having to meet the specifications of 400 VAC and at least 4 A, might be well resolved with a Finder of the series 40-31?

The Finder should be fine, I don't have time to look for it, see the datasheet, If it is at least 4 amps and 400 volts then okay.

But your reasoning is absolutely right, in fact the Triac would eliminate noise, and since I will arrive tomorrow or the next day you could start rehearsing with him.

If you were to do the fool, you could cure him by adding a resistive load in parallel with the 220 volt feeder spindle power.

A resistive load suitable could be an incandescent 10, 20 or 40 Watts.

The bulbs are fine but have the defect that could burn. So it would be best to replace with a resistor of power dissipated (rectangular ceramic and cement resistors mounted on a metal or aluminum fin of any container or structure that is there already)(but be careful to insulate well, with sheath, the two terminals and not risk that can touch the metal).

The resistors, to last, must be at least double power, or triple, of that drawing.

The greater the heat loss and greater operating stability. So it's good to do many tests (switched on and off with the tester plugged) and go down until dissipating the Triac does the fool, and then climbs to at least double to be on the safe side.

I Optotriacs I received the evidence described and we'll see what happens; This seems to me to be the most “elegant”, If not then prove satisfactory remains in the alternative the mechanical relay Finder for at least 4 amps and 400 volts (in true AC? … Since you will have to drive the spindle transformer power supply).
Out of curiosity: use the conditional to contemplate the need for resistance load but you almost know or truly make you keep within the probability?

Can't tell you how many are about the conditional probability that the Triac open and close bad. It all depends on how the load is inductive. Probably the motor provides enough real load to compensate for the inductance of the transformer. But be careful that the engine must be switched on, If you shut the engine by interrupting the continuous, It would pretty much just the transformer, and then a very inductive load.

Even under these conditions the Triac might open and close properly, It all depends on how you made the PSU and the values of the various components (If the power supply was a switching, then it would be even harder to imagine what might happen).

So the only way to find out is to try.

I'll warn you because, If the Triac were to close a single half-wave for a long time, the transformer would work pretty much constantly, and then the current would rise a lot and would heat up to burn it.

Anyway to burn the transformer it takes minutes, not seconds. And also a fuse well dimensioned, on the primary, may eliminate this risk.

Now you know everything (in theory) but just trying you'll figure out how close you are, or away, from problems. Then let us know how it went, because your tests might be useful to others.

Hello Livio, I write to you after you had a chat with Fabio concerning a problem of “Theremino CNC”. There was talk of various possibilities to configure the software so that it does not produce jerky movements with speeds approaching or exceeding 1000 mm/min. But as mentioned by Fabio, will be fixed in subsequent releases. Yet on linear traits and 45 degrees, You can cut at any speed. For a circle, Instead, even at 700 mm/min for vibration. Perhaps because the axes are chasing?
In a note they said to reduce the length of the segments in the CAM….
I understand, but I don't know how to do. And it's a question I already asked and I addressed to several persons. But a Gcode has a resolution for a curve into segments? No answer.

Go fast and accurate it would be important, especially for projects close enough to 5 axes.

Question 1
Stepper Motors are driven into the current, not live. So if you pilot a ampere a motor that has an internal resistance of 3.2 ohm resistor, then on its windings will develop a 3.2 volts. The voltage that is indicated in the features is the voltage that develops on the engine as you pilot with maximum tolerable current.

However the voltage of the motors do not ever consider. With drivers switching type (like the A4988 TB6600 or DRV8825 or) all engines, any tension have, are fine.

The engine driver's task is to send a precise and adjustable current.
The drivers are in practice of switching power supplies that are withdrawing from the power supply (to 12, 24, or 48 volts) what he needs to send to the motor current is established with the trimmer.

Switching drivers, levying of the input voltage a current considerably lower than that they send to the engine (plus or minus the ratio of two voltages). So if you measure current before the driver you are deceiving. The current to the motor will be considerably higher.

Caution to adjust the trimmer to a lower current than indicated by the engine. The current indicated in the characteristics of the engine is the maximum (beyond which the engine will be damaged). It is normally fine adjust drivers for half of this current or even less. A good test is to keep the motor powered fifteen minutes and then feel how hot. If the current sheet is too high.

Our pages dedicated to the stepper motors explain how to make these adjustments.

Question 2
Tensions declared can be quite different but, as explained earlier, Never mind. However tensions are always lower than the 5 volts. More voltage is low and less the engine warms, low power, because they used a larger wire and there is less heat loss. The voltage of 24V, the second link you provided, is a misprint, they should write 2.4 volts.

Question 3
All the usual stepper motors can be driven with A4988 or DRV8825.

Hello Livio, I lose steps in Z.
and that is when working with feeds 500 (low) the z-axis after some hundreds of lines I see rising up. I made tests with automation and micrometer making hundreds of executions up to read the position each 20 seconds for an hour's work has always been to zero (precise). the motors are of the closed loop and you see the effect of accuracy. What can I do to control where this strange lifting. If I pause and read the position I see that progressively climbs. I'm going crazy. This happened even when the car was made of wood but now it's all aluminum. As in the previous version even with several micro-steps the situation was the same. Thank you.

Hello Livio,
with guilty delay mean the outcome of the tests conducted on the spindle driven by Master and Optotriacs.
During the tests the triac opens and closes properly, never gave signs of instability and thus not materialised the need to incorporate resistance load; as well as the transformer does not seem to suffer any anomaly.
All measurements of voltage on the transformer primary spindle motor were performed according to the instructions and always showed a value of 10 V. with Master control signal lowered.
I repeat, everything seems to work properly, but the measured value of 10 V. It's not too high to be sure to have a safety margin on the proper functioning?
Thank you, I think it is very appropriate recommended use for controlling the spindle Optotriacs, more elegant’ compared with sfiaccolamenti arising out of the use of the relay, that however I would understand trying as a teaching exercise.

Donations

Our applications have no copyright, so you can make every use, without any limitation. We are not asking even for the name Theremino or the site, but remember to us and let us know your friends.

Any donations, even small, are very welcome and can help the next projects.

Get the system modules

The theremino team only deals with research and does not sell hardware.

The system is completely "Freeware", "Open Source", "Not for Profit" and "DIY", but there are manufacturers who can provide modules assembled and tested at a great price. One could hardly self-build them spending less.

Disclaimer

The software, the firmware and circuit diagrams published on this site,
should not be used for life support systems,
or in any project where failure can affect the safety.

This does not mean that the system is particularly unreliable. Indeed, precisely because of its smooth functioning, could someone use it inappropriately.
But theremino the system was not designed for applications that can be dangerous, for which we disclaim all responsibility.

Legal notice

This site does not capture and store personal information.

Even in the case of donations through PayPal, We do not collect user's details.

Everything on the site is completely free, Open Source and no copyright.

For the license, legal notices and the privacy of personal data, consult This page.