Change polarity of step output on 7i80 board

More
20 Nov 2015 01:16 - 20 Nov 2015 01:53 #65554 by auto-mation-assist
In regards to the Mesa 7i80 board gpio interface. I have been trying to change the polarity of the step outputs that appear to be hard coded in hostmot2 to the output pins of the assigned gpio pin when the bit file is created. In my case I assigned my x-axis step out to io3 and it appears not to be available in hal to change the pulse output polarity. Hal states that the pin is not found and the pin does not show up as being configurable in Halshow. I suspect that there is a way to change the output pulses from positive going to negative going with commands similar to those used for steplen or stepspace.

At the present time I can control the motor speed just fine but wish to invert the output signal which will make it so the opto isolator in the Leadshine DCS810 the pulse output is driving light up up only when step pulses are being generated. At the present time with no pulses generated about 10ma of current is passing through the opto's input pins. Step pulse width is 3us so the average current should from zero to very low. I have six of these outputs to change. I'm running 2.8.0-pre1-1214-g447847f of linuxcnc.

Is there a way to flip the output polarity of the step pulses and also verify open drain configuration?
Last edit: 20 Nov 2015 01:53 by auto-mation-assist. Reason: I forgot to add version of linuxcnc

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

More
20 Nov 2015 11:27 #65567 by andypugh

In my case I assigned my x-axis step out to io3 and it appears not to be available in hal to change the pulse output polarity. Hal states that the pin is not found and the pin does not show up as being configurable in Halshow.


Every stepgen pin is also a GPIO pin. If you want to invert the sense of the pin then you set the ...invert_output parameter of the gpio pin.

In your case this is probably
setp hm2_7i80.0.gpio.003.invert_output 1

linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html#UART
The following user(s) said Thank You: auto-mation-assist

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

More
20 Nov 2015 15:55 - 20 Nov 2015 19:40 #65574 by PCW
You can check if open-drain is enabled for a pin by verifying that the pin voltage is 5V
when the pin is in a a high state (If you invert the stepgen outputs they will idle in a high state)

Not sure when it was merged (or if its merged yet) but there is coming support for GPIO name aliases
so instead of:
setp hm2_7i80.0.gpio.003.invert_output 1
you use (something like):
setp hm2_7i80.0.stepgen.01.invert_output true

This makes hal files more readable and portable
Last edit: 20 Nov 2015 19:40 by PCW.
The following user(s) said Thank You: auto-mation-assist

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

More
20 Nov 2015 18:52 #65579 by andypugh

Not sure when it was merged (or if its merged yet) but there is coming support for GPIO name aliases


It appears to only be in Master, so won't be in a release version prior to 2.8.
The following user(s) said Thank You: auto-mation-assist

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

More
20 Nov 2015 21:23 #65587 by auto-mation-assist
andypugh your suggestion of using setp hm2_7i80.0.gpio.003.invert_output 1 resolved my issue. I tried this before but suspect that I left of the "1" on the end.

PCW using setp hm2_7i80.0.stepgen.01.invert_output true gave me a error of 'parameter or pin 'hm2_7i80.0.stepgen.01.invert_output' not found'. I also tried it as setp hm2_7i80.0.stepgen.00.invert_output true and it gave me the same result.

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

More
20 Nov 2015 22:56 - 20 Nov 2015 22:57 #65589 by PCW
I suspect it has to be a pretty fresh version of master to have the aliases

Rather than guessing at pin or parameter names you can list all the available pins and parameters
by making a master list (suitable for copy-paste into hal files) by using halcmd when linuxcnc is running:

halcmd show pin > allpins.txt
halcmd show param >allparams.txt
Last edit: 20 Nov 2015 22:57 by PCW.
The following user(s) said Thank You: auto-mation-assist

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

Time to create page: 0.241 seconds
Powered by Kunena Forum