Go Down

Topic: Simulate a 10k 10v potentiometer with arduino for a motor with inverter (Read 856 times) previous topic - next topic

nemoz_z

Good morning,
I have the following problem, actually I have an ABB inverter ACS380 for a small motor 0,5 KW.
Actually I have a Eaton R10k potentiometer connected to control it, the analog input works with 10v, I created a remote controller and a receiver with 2 ESp8266 and wifi, on the remote I have the R10k potentiometer and on the receiver I have a PWM output, actually I'm controlling a led but my idea is to find a digital potentiometer that will receive input in 3,3v and have an external source power to connect the 10v input( I already programmed the receiver that in case of failure connection the emergency button will be activated).
Can someone of you please let me know if this type of potentiometer exist?
Other option I have in mind is to create a voltage multiplier, but I don't know the performance following the input from the remote(I would like to not have big latency).
The last option I had in mind is to connect a servo to a 10k potentiometer and mechanically control it, but I think there are other digital options available on the market.

thanking you in advance for the replies and sorry for my English.

MarkT

See the table at the end of https://www.analog.com/media/en/news-marketing-collateral/product-selection-guide/Choosing_the_Correct_Digipot.pdf   Some are high voltage.

Another approach is to stick a 10k across the terminals and use a DAC to generate the wiper voltage,
although you'll likely need a 5V DAC and an opamp x2 gain circuit.  You need the 10k to avoid triggering the safety cut-out (which detects a wiring fault to the pot).  You basically simulate the
track with the resistor and the wiper with the DAC.

But first you need to check if the inverter control electronics is ground-referenced, or if it floats at
mains voltage, which is obviously much more dangerous to work with and would force you to take
various procautions.
[ I DO NOT respond to personal messages, I WILL delete them unread, use the forum please ]

WattsThat

The Microchip MCP41HV51 digital pot will work fine with the +10 volt reference of the ACS380.

The ACS380 also accepts a frequency input of 0 to 16KHz which can be scaled to any speed/frequency range, it depends if the drive is in scalar or vector control. All that is needed is a single transistor voltage level translator to 24 vdc and driving the input reference with a frequency reference output from the ESP8266. The duty cycle is unimportant, just the frequency. The input range can be adjusted through parameter group 11, the speed range can be any arbitrary frequency range so long as it is within from 0 to 16KHz.
Vacuum tube guy in a solid state world

nemoz_z

thanks very much to both of you, I think I will go with 0 to 16KHz, I will look to the ACS380 to check where I have to connect it because i can do it now, i will buy anyway some of the MCP41HV51 to try that way too.
I will use that code to test it.

Code: [Select]
#define OUT 9          // OUT PIN

void setup()
{
  Serial.begin(9600);
  pinMode(OUT, OUTPUT);
}

void loop()
{
  if(Serial.available())
  {
    long frequency = Serial.parseInt();
    Serial.print(Set_frequency(frequency));
    Serial.println(" Hz");
    delay(3000);
  }
}


long Set_frequency(long freq)
{
  TCCR1A = 0b01000000;
  uint16_t ocr;
  if(freq < 134)
  {
    TCCR1B = 0b00001010;
    ocr = 1000000UL/freq - 1;
    freq = 1000000UL/(ocr+1);
  }
  else
  {
    TCCR1B = 0b00001001;
    ocr = 8000000UL/freq - 1;
    freq = 8000000UL/(ocr+1);
  }
  OCR1AH = highByte(ocr);
  OCR1AL = lowByte(ocr);
  TIMSK1 = 0;
  return freq;
}

WattsThat

The frequency input/output only exist if you purchased the standard I/O variant ACS380-04xS with standard digital & analog I/O because frequency is handled only through DIO1 and DIO2. If you purchased a version with a fieldbus module (Ethernet, Profibus, etc), you will not have the DIO capability.
Vacuum tube guy in a solid state world

nemoz_z

In the end I ordered the MCP4151 as you suggested and I wired with an arduino, working perfectly with 5v only on the breadboard, but I'm a little bit confused how to wire it with the 10v fom my ACS380, I have 3 wires connected to the potenziometer +10v ground ans signal, signal, actually I have the 5v on pin 8 and 5, I suppose I have to wire the pin 8 with the 5v, put the ground from my acs380 and arduino in common and the pin n5 to the 10v from the acs380. Am I wrong?


johndg

, I suppose I have to wire the pin 8 with the 5v, put the ground from my acs380 and arduino in common and the pin n5 to the 10v from the acs380. Am I wrong?
Afraid so. Datasheet for the MCP4151 states (under absolute maximum ratings): "Voltage on all other pins (PxA, PxW, PxB, and SDO) with respect to VSS ............................ -0.3V to VDD + 0.3V", and your VDD is +5V. 10V on pin 5 will probably let out the magic smoke!

johndg

This should do the trick:
A1 is a single-supply rail-to-rail output op-amp, which with R3 and R4 form an amplifier with a gain of +2. R1 and C1 should be chosen to filter the PWM output (turn it into a DC level).




May need a decoupling cap on pin 8, especially if there's noise around.

WattsThat

The originally suggested part was MCP41HV51, not MCP4151. The HV version is quite capable of the handling the 10v signal.
Vacuum tube guy in a solid state world

johndg


nemoz_z

thanks to both of you, my mistake in ordering it, I will order the correct one.

johndg

The originally suggested part was MCP41HV51, not MCP4151. The HV version is quite capable of the handling the 10v signal.
Was racking my brains last night while trying to get to sleep. How did I make such a schoolboy simple error?
This morning I saw #5, the post to which I was replying  :) !

nemoz_z

Does anyone know an alternative to MCP41HV51 with different package than TSSOP (ST) or VQFN (MQ), bigger  to be used on a breadboard for testing like PHT? I can't find anything ...

johndg

Does anyone know an alternative to MCP41HV51 with different package than TSSOP (ST) or VQFN (MQ), bigger  to be used on a breadboard for testing like PHT? I can't find anything ...
Nothing from RS Components or Farnell. Looks like you may be stuck with my op-amp circuit. You could use one of your MCP4151s to drive it instead of PWM it you wanted - may be easier than filtering the PWM signal to get a nice stable level.

johndg

Just been having a look at the ACS380 firmware manual. It's pretty complicated, but I think you'll find that you can scale the analog speed reference input so you get 0 to 5V in corresponding to eg -max speed to +max speed or 0 to max speed or whatever, ie it doesn't have to be the full 10V span.

Then you can use your circuit of #5, with pins 4 and 7 of the MCP4151 connected to Arduino GND and ACSS380 analog GND , and pin 6 of the MCP4151 to the ACS380 speed reference input.

Can someone check me on this, please?

ACS380 firmware manual  and hardware manual for reference.

Go Up