VFD Modbus Mesa 7i96S pktUART

More
2 years 7 months ago #295440 by blazini36
I mean the Modbus driver side. You're just guessing what to set the VFD to unless you either already know what the Mesa/driver side is doing or you set it yourself. PCW says he has it working with a GS10 VFD so he can tell you definitively what the VFD should be set at, otherwise it wouldn't work for him either.

Looking around I've only come across things that suggest it should be set at 8<parity>1 which is pretty typical. You should try using something like qmodbus with your USB dongle to make sure you can get something out of that VFD before messing with pktUART

Please Log in to join the conversation.

More
2 years 7 months ago #295443 by DerChristian
Yeah I'm trying exactly that. Took the vfd out of the wiring cabinet and with me into the office. Tested different programs, thanks for mentioning qmodbus. I even took the control board apart to see if there is maybe an error in the manual and the modbus is using other pins of the RJ45 connector than the mentioned pins 1 and 2. But after some fiddling and testing different pins I'am sure pin 1 and 2 are the right pins. Because thats the only combination where I even get ay RX signal. But no matter what I'm doing the only response I get is 00. I also contacted the tech support of the vfd.
P.S. do you know if qmodbus is sending CRC16 after each command?

Please Log in to join the conversation.

More
2 years 7 months ago #295446 by blazini36

Yeah I'm trying exactly that. Took the vfd out of the wiring cabinet and with me into the office. Tested different programs, thanks for mentioning qmodbus. I even took the control board apart to see if there is maybe an error in the manual and the modbus is using other pins of the RJ45 connector than the mentioned pins 1 and 2. But after some fiddling and testing different pins I'am sure pin 1 and 2 are the right pins. Because thats the only combination where I even get ay RX signal. But no matter what I'm doing the only response I get is 00. I also contacted the tech support of the vfd.
P.S. do you know if qmodbus is sending CRC16 after each command?
 
No idea about the CRC, I rarely use Modbus/RS485 except to program Schnieder VFDs. I'd assume it does or it'd be fairly useless.

I looked at the manual quick, it mentions the H0110 card which looks like the keypad that comes with the drive. There are screw terminals, SG+ and SG- that are the same as pins 1 and 2 of the RJ45 connector, not sure how you're connected but that might be easier to mess with. There's also a jumper to turn RS485 on or off so you might wanna check that. BTW, once you get it working you might wanna check this post, I just happened to see this. Down the page it's mentioned that a parameter needs to be set if using 16bit registers.
forum.linuxcnc.org/24-hal-components/387...modbus-rtu?start=120

Please Log in to join the conversation.

More
2 years 7 months ago #295448 by DerChristian
Hey thanks for your reply. The standard controller of the vfd is the H0101 and sadly not the H0110. On the one I've got there are no extra pins for the RS485 and no jumper. It's some pages before the one you looked at in the manual.

Please Log in to join the conversation.

More
2 years 7 months ago #296315 by DerChristian
Okay so I found the problem. The controlboard of the VFD seems to have been broken. I ordered a new controlboard and a spare VFD and both are answering modbus commands as expected. Now I have to find out how to implement them in my linuxcnc setup. @PCW you mentioned using enum in another post. May I ask you for an example? 

Please Log in to join the conversation.

More
2 years 7 months ago #296440 by DerChristian
Little update. Got everything kind of working. 
Code:
loadrt VFD_modbus ports=hm2_7i96s.0.pktuart.0 addf VFD_modbus.00 servo-thread setp VFD_modbus.00.address 1 setp VFD_modbus.00.baudrate 9600 loadrt enum enums=E;;forward;;reverse;;;;;;;;;;;;;stop; names=enum.spindle addf enum.spindle servo-thread # Spindle PID Setup setp pid.s.Pgain [SPINDLE_0](P) setp pid.s.Igain [SPINDLE_0](I) setp pid.s.Dgain [SPINDLE_0](D) setp pid.s.bias [SPINDLE_0](BIAS) setp pid.s.FF0 [SPINDLE_0](FF0) setp pid.s.FF1 [SPINDLE_0](FF1) setp pid.s.FF2 [SPINDLE_0](FF2) setp pid.s.deadband [SPINDLE_0](DEADBAND) setp pid.s.maxoutput [SPINDLE_0](MAX_OUTPUT) setp pid.s.error-previous-target true # Spindle PWM Setup ##setp hm2_[MESA](BOARD).0.pwmgen.00.output-type [SPINDLE_0](PWM_TYPE) ##setp hm2_[MESA](BOARD).0.pwmgen.pwm_frequency [SPINDLE_0](PWM_FREQUENCY) ##setp hm2_[MESA](BOARD).0.pwmgen.00.scale [SPINDLE_0]MAX_OUTPUT # Spindle Enable ##net spindle-on <= spindle.0.on net spindle-on => pid.s.enable ##net spindle-on => hm2_[MESA](BOARD).0.pwmgen.00.enable loadrt scale names=scale.spindle addf scale.spindle servo-thread scale.spindle.gain = 2.4 loadrt conv_float_u32 names=conv_float_u32.spindle addf conv_float_u32.spindle servo-thread # Spindle Connections net spindle-speed scale.spindle.in <= spindle.0.speed-out-abs net spindle-conv conv_float_u32.spindle.in <= scale.spindle.out net spindle-vel-cmd <= conv_float_u32.spindle.out net spindle-vel-cmd => VFD_modbus.00.frequency net spindle-pid-out <= pid.s.output net spindle-pid-out => hm2_[MESA](BOARD).0.pwmgen.00.value # Spindle Feedback setp spindle.0.at-speed true Not sure about the whole spindle PID Parameters. First I have to find out the address for the actual running frequency feedback signal of the spindle. The addresses mentioned in the manual of the vfd seem to be wrong, will contact the manufacturer to confirm. What is the recommended route for vfds, using the build in PID controlller of the vfd or doing it in linuxcnc? 

Please Log in to join the conversation.

Time to create page: 0.110 seconds
Powered by Kunena Forum