emcoturn 120 / 220 tool turret hal outputs

More
26 Jul 2019 09:23 #140639 by Erikcnc

You cannot do 500 Hz PWM with the 7I76E field outputs so a firmware change is required

There is not any real risk of bricking the 7i76E unless you write an incorrect file to both EEPROMS

If you only need 2 PWM signals and you don't need all 5 stepgens, the easiest way to get these signals is
to "steal" the last (04) stepgen pins with firmware that puts a PWM generator on these pins

It sounds like you would want a single PWM gen used in up/down mode
(this puts the PWM value on one pin for positive numbers and the other pin for negative numbers)

Note that the 7i76e_7i76x1pD.bit firmware has this configuration (last stepgen replaced with a PWMgen)



sounds complicated to me. never done that.
now i am in doubt what to do.
this setup with the l298n board or go for the toolerator3000.

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 10:46 #140641 by pl7i92
hi
you shoudt upgrade this
The motor is driven by a L298N motor module.

to at least tb6600 better to go for a real DM556 this gives you the big power you like to see on a toolchanger

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 11:24 #140643 by PCW
pl7i92: AFAIK the toolchanger uses a DC motor that's speed controlled by
PWM, so a step motor drive is not appropriate here.

EricCNC: I think changing the firmware and using a step/dir output for
PWM is the most straight forward way to get high speed 5V PWM
signals to the LM298, but looking at how the toolchanger works, you also
need to sense when the motor stalls (via overcurrent sense),
do you have provisions for this?

If not maybe you would be better off with one of the USB/Modbus
interfaced Emco toolchanger driver replacements
The following user(s) said Thank You: Erikcnc

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 12:43 #140648 by Erikcnc

pl7i92: AFAIK the toolchanger uses a DC motor that's speed controlled by
PWM, so a step motor drive is not appropriate here.

EricCNC: I think changing the firmware and using a step/dir output for
PWM is the most straight forward way to get high speed 5V PWM
signals to the LM298, but looking at how the toolchanger works, you also
need to sense when the motor stalls (via overcurrent sense),
do you have provisions for this?

If not maybe you would be better off with one of the USB/Modbus
interfaced Emco toolchanger driver replacements


thanks for the reply pcw.

i dont think its capable of sensing overcurrent. it using a encoder with 4 optics sensors that is reading a disc.
If the toolerator3000 reading motor current i dont know.

i can give it a try to update the firmware. if its not working i can always go for the toolerator.

how do i update the firmware for the mesa 7i76e?
after that, which pins should i use? and how are they called for in the hal file?

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 12:53 - 26 Jul 2019 12:59 #140650 by PCW
You use mesaflash to update the firmware

Assuming your IP address is 10.10.10.10 the command would be

mesaflash --device 7i76e --addr 10.10.10.10 --write 7i76e_7i76x1pD.bit

This firmware replaces the last (channel 4) stepgen with a PWMgen

Since it will be very important that the initial states of the PWM pins do not cause
motion, you need to chose the + or - outputs properly so the power up state is idle
(I suspect this means that you will need to invert the PWM pins in the hal file also)

Note that the pins themselves are not addressed in the hal file, just the PWMgen
(at least for LinuxCNC 2.8 and >)

Also to protect the 7I76E's Step/Dir outputs I would use a say 470 Ohm series resistor
in the outputs connected to the LM298 so a mis-connect or failed LM298 does not harm
the 7I76E
Last edit: 26 Jul 2019 12:59 by PCW.
The following user(s) said Thank You: Erikcnc

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 13:09 #140653 by tommylight

Also to protect the 7I76E's Step/Dir outputs I would use a say 470 Ohm series resistor
in the outputs connected to the LM298 so a mis-connect or failed LM298 does not harm
the 7I76E

Seen plenty of blown L298, they are very eager to let the magic smoke out, but never seen a blown L297 due to L298 blowing up.
Still, take the PCW's advice and add the resistors. Miss connections can and do happen.
The following user(s) said Thank You: Erikcnc

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 18:08 #140666 by Erikcnc

You use mesaflash to update the firmware

Assuming your IP address is 10.10.10.10 the command would be

mesaflash --device 7i76e --addr 10.10.10.10 --write 7i76e_7i76x1pD.bit

This firmware replaces the last (channel 4) stepgen with a PWMgen

Since it will be very important that the initial states of the PWM pins do not cause
motion, you need to chose the + or - outputs properly so the power up state is idle
(I suspect this means that you will need to invert the PWM pins in the hal file also)

Note that the pins themselves are not addressed in the hal file, just the PWMgen
(at least for LinuxCNC 2.8 and >)

Also to protect the 7I76E's Step/Dir outputs I would use a say 470 Ohm series resistor
in the outputs connected to the LM298 so a mis-connect or failed LM298 does not harm
the 7I76E



Yes, i use IP address is 10.10.10.10.

i will try to update the firmware now.
got the wires for IN1 and IN2 with both 470 ohm resistors ready.

This is the L298n board got.www.sainsmart.com/products/sainsmart-l29...d-module-for-arduino

and what are the specific changes to the hal file?

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 19:08 - 26 Jul 2019 19:09 #140676 by Erikcnc
I successfully flashed the mesa board.

tryed to start up linuxcnc.
get a error of course.

pwmgen0.0enable does not exist


how the hal file now looks like.
##############Toolchanger#########################

loadrt emcochanger
addf emcochanger servo-thread

loadrt timedelay count=2
addf timedelay.0 servo-thread
# will wait 2 secs approx and turn motor off after reversing against stop
setp timedelay.0.on-delay 0.8

#Toolchanger delay time before reverse lock
addf timedelay.1 servo-thread
setp timedelay.1.on-delay 0.2


net tool-change iocontrol.0.tool-change => emcochanger.toolchange
net tool-changed iocontrol.0.tool-changed <= emcochanger.toolchanged
net tool-number iocontrol.0.tool-prep-number => emcochanger.toolnumber
net tool-oldnumber iocontrol.0.tool-number => emcochanger.currenttoolnumber
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared

net sig1 emcochanger.opto1 <= hm2_7i76e.0.7i76.0.0.input-21
net sig2 emcochanger.opto2 <= hm2_7i76e.0.7i76.0.0.input-22
net sig3 emcochanger.opto3 <= hm2_7i76e.0.7i76.0.0.input-23
net sig4 emcochanger.opto4 <= hm2_7i76e.0.7i76.0.0.input-24

#direction signal for toolchanger
net sig-forward emcochanger.forward => hm2_7i76e.0.7i76.0.0.output-02

#run signal for toolchanger
net x-enable => pwmgen.0.enable
net pwmgen_value pwmgen.0.value <= emcochanger.setpwm
net pwmgen_out pwmgen.0.pwm => hm2_7i76e.0.7i76.0.0.output-01

setp hm2_7i76e.0.7i76.0.0.output-00 1
setp hm2_7i76e.0.7i76.0.0.output-01 1


net xhomed axis.0.homed => emcochanger.ishomedX
net zhomed axis.2.homed => emcochanger.ishomedZ

net delaystart timedelay.0.in <= emcochanger.delaystart
net delaydone timedelay.0.out => emcochanger.delaydone

net delaystart1 timedelay.1.in <= emcochanger.delaystart1
net delaydone1 timedelay.1.out => emcochanger.delaydone1

# if the delay is too long in switching relays for forward and reverse
# setp emcochanger.times 300
# for instance will make it shorter, default is 500 - about 1-2 secs on my system
Last edit: 26 Jul 2019 19:09 by Erikcnc.

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 19:12 #140679 by tommylight
Did you add the PWM to loadrt hm2_pci as PCW sugested? You must have num_pwm = 1 in that line.

Please Log in or Create an account to join the conversation.

More
26 Jul 2019 19:25 - 26 Jul 2019 19:35 #140681 by Erikcnc

Did you add the PWM to loadrt hm2_pci as PCW sugested? You must have num_pwm = 1 in that line.


Sorry no, i think i mis understand that.
loadrt hm2_pci config="firmware=hm2_7i76e_7i76x1pD.bit
       num_encoders=3 num_pwmgens=3 num_stepgens=1"

does i go like this?:blush:

edit.
I got no pci board but the 7i76e

i am confused now wat to do.
Last edit: 26 Jul 2019 19:35 by Erikcnc.

Please Log in or Create an account to join the conversation.

Time to create page: 0.165 seconds
Powered by Kunena Forum