Alright. I'm in a field where I have to use several VFDs or VARIABLE FREQUENCY DRIVES to run a machine according to a preset pattern. I researched and found several methods by which one can control a VFD. There's Profibus, Ethernet and the good ol' potentiometer method. My aim is just to control the speed of the motor connected to the VFD and nothing else, so this includes start/stop and vary the speed.
So I'll be implementing the analog method here ( potentiometer ) .
I generally use the Sinamics range of VFDs from siemens to run a 3 phase 440 V motor. According to the manual there are 3 pins i need to control via POT. 10V, 0V and input. So when I vary the POT the voltage on the input side should be 0 to 10V (i.e minimum to maximum motor speed).
Now since the 10V~0V input is being given by the POT with on-board 0V as reference, I cannot use an external source to power my arduino. There is an on-board 24V O/P but gives only 50mA of current. which I feel is too less with nothing in surplus.
Is there any method, other than switching to ethernet to achieve what I require??
Does it work the same way for different arduinos too?, for example if there are 2 vfds and two arduinos can I short all their ground pins together on the same rail?
24V supply is standard in industrial control equipment. And if you use a 24V to 5V switching setpdown regulator you can easily power the arduino from the 24V supply on the drive. Depending on the efficiency of the regulator you can expect somewherre between 150mA and 200mA @5v.
What you should be concerned of is that the anaolgWrite() function outputs a PWM signal @490hz and NOT an analog DC signal. In order to convert this o a dc signal you must use a low pass filter. Also the max output would be 5V instead of 10V.
So while your'e in the process of building the regulator, throw in i quad opamp to filter, amplify and buffer the PWM output to interface to the drive without trouble.
nilton61:
24V supply is standard in industrial control equipment. And if you use a 24V to 5V switching setpdown regulator you can easily power the arduino from the 24V supply on the drive. Depending on the efficiency of the regulator you can expect somewherre between 150mA and 200mA @5v.
What you should be concerned of is that the anaolgWrite() function outputs a PWM signal @490hz and NOT an analog DC signal. In order to convert this o a dc signal you must use a low pass filter. Also the max output would be 5V instead of 10V.
So while your'e in the process of building the regulator, throw in i quad opamp to filter, amplify and buffer the PWM output to interface to the drive without trouble.
Yes, well there's this small thing my friends use called an h-bridge which converts 5V to 12V even in variation so 2.5V will be 6V. So I'll just limit my PWM O/P to 212.5 in value (255 is 12V/5V right ?).
So, some help with the low pass filter please ?, any IC you can refer or datasheet or some blog article over here or something ?
Anything else I'm missing ?, why should I buffer the PWM O/P, also since I'm a newbie , please tell me how I do that ?
Wrong. A H-bridge is a standard configuration for transistors driving bipolar loads. And, yes it can be used in voltage converters driving a transformer followed by a rectifier which is probably what your friends mean. BUT its intended use is to convert supply voltages not control voltages. If functioning at all it will probably lack the precision needed for a control voltage.
There are plenty of pages on the internet on op-amps and filter design. What you should do is set the cutoff frequency MUCH lower than 490Hz in order to get a smooth output voltage. 2Hz would be a good starting point. A motor driving a load will not accelerate much quicker anyhow.
Also: outputting a analogWrite() value of 212.5 is meaninless because the argument is an integer.
nilton61:
Wrong. A H-bridge is a standard configuration for transistors driving bipolar loads. And, yes it can be used in voltage converters driving a transformer followed by a rectifier which is probably what your friends mean. BUT its intended use is to convert supply voltages not control voltages. If functioning at all it will probably lack the precision needed for a control voltage.
There are plenty of pages on the internet on op-amps and filter design. What you should do is set the cutoff frequency MUCH lower than 490Hz in order to get a smooth output voltage. 2Hz would be a good starting point. A motor driving a load will not accelerate much quicker anyhow.
Also: outputting a analogWrite() value of 212.5 is meaninless because the argument is an integer.
Got it, my earlier logic was, take the 5V pwm OP from the board and link it to a H-Bridge which varies the O/P at 12V in relation to the PWM. I take now that the PWM signal is not purely analog, so I must use a CAP to filter the O/P before hand ( I read somewhere a 1Mfd cap is enough ?). After filtering the 5V PWM, you're saying I can't feed it directly into a H-bridge ? (even though the 5V signal is now pure/purer ? ). Also, I thought that higher the frequency, better the purity, but the theory is that the voltage should not contain waves at all, i.e Hz = 0 . Please link me to a good page somewhere =( having trouble finding the right one.
Power the Arduino from a separate power supply (or USB from a PC). Have the Arduino drive an opto isolator from a PWM pin. Use the opto isolator and a couple of resistors to produce a 10V PWM signal from the 24V supply. If the input resistance of the VFD is high enough, you can then use a simple RC filter to convert this to a 0-10V analog signal. Otherwise, use a cheap op amp such as LM358 configured as a 2nd order low pass filter, to smooth and buffer the signal.
Power the Arduino from the 24V supply using a DC-DC converter. An Arduino Uno takes around 50mA @ 5V, which equates to about 15mA @ 24V using a reasonably efficient converter. A standalone atmega328p without the USB-to-serial converter only takes about 20mA, or even less if you reduce the clock speed. Use an op amp and a few resistors and capacitors to generate the 0-10V signal from a PWM pin.