- Configuring LinuxCNC
- Configuration Tools
- PnCConf Wizard
- 6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
17 Oct 2017 12:52 #100464
by andypugh
linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html#stepgen
If you look at this VHD file you will see what a multi-pin stepgen loooks like:
github.com/LinuxCNC/hostmot2-firmware/bl.../src/PIN_ST12_72.vhd
(That one uses numbers for the pin functions, corresponding to
github.com/LinuxCNC/linuxcnc/blob/master...hostmot2/pins.c#L126
(The "8" means "Output"))
But: I would suggest not bothering. A ULN2003-based driver can only ever run stepers in unipolar mode, and more critically can not (typically) run in constant-current mode. Much better drivers are available very cheaply.
You can free them up. If your loadrt hm2_pci line contains "num_encoders=6" then the input pins for the last 2 encoders become available as GPIO. I think this is only 3 actual IO pins, though, due to the multiplexing.
On the 5i25 side these pins can be set to input or output, but the 7i85 enforces a pin direction just through the hardware.
A simpler approach, and one that will give you a lot more IO would be to attach a smart-serial card to the smart-serial port on one or both 7i85 cards. You can connect any two of these to your existing hardware.
store.mesanet.com/index.php?route=product/category&path=83_88
Replied by andypugh on topic 6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
Not using the bitfile that you have, no. The issue is that if you look at the VHD file (or the mesaflash --readhmid output, or the dmesg print) each stepgen only has two pins allocated to it. (step and dir) and stepgen type 5 needs 4 pins.1. Can I get a stepgen type5 working on the 7i85s? Here come my previous driver into play uln2003... 6motors need to be connected. 4 wires each.
linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html#stepgen
If you look at this VHD file you will see what a multi-pin stepgen loooks like:
github.com/LinuxCNC/hostmot2-firmware/bl.../src/PIN_ST12_72.vhd
(That one uses numbers for the pin functions, corresponding to
github.com/LinuxCNC/linuxcnc/blob/master...hostmot2/pins.c#L126
(The "8" means "Output"))
But: I would suggest not bothering. A ULN2003-based driver can only ever run stepers in unipolar mode, and more critically can not (typically) run in constant-current mode. Much better drivers are available very cheaply.
The type used on model aircraft? Yes, that can be done with a suitably-scaled PWM signal. It doesn't work especially well with software PWM but the Mesa PWM should be OK.Can I get microservo motors running on 7i85s? Only 3 wires come out of these motors. +Vcc, ground and signal. (6motors)
3. I have 8 step dirs on this 7i85s. And 8 encoders which is great but I would like to have free gpio pins to connect all limit switches seperatly. Is this possible on these cards, can I free up the gpio from the step dir and encoders if not used or are they preset anyhow.
You can free them up. If your loadrt hm2_pci line contains "num_encoders=6" then the input pins for the last 2 encoders become available as GPIO. I think this is only 3 actual IO pins, though, due to the multiplexing.
On the 5i25 side these pins can be set to input or output, but the 7i85 enforces a pin direction just through the hardware.
A simpler approach, and one that will give you a lot more IO would be to attach a smart-serial card to the smart-serial port on one or both 7i85 cards. You can connect any two of these to your existing hardware.
store.mesanet.com/index.php?route=product/category&path=83_88
The following user(s) said Thank You: Marcodi
Please Log in or Create an account to join the conversation.
19 Oct 2017 09:25 - 19 Oct 2017 09:29 #100544
by Marcodi
Replied by Marcodi on topic 6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
Ok.
I will be ordering a 7184 mode 3 from mesa for my extra inputs and outputs. This is configurable in the pncconf aswell so i see. Thanks for the help.
@andypugh:
Thanks for the explanation, i have looked at all the links.
Would you happen to know which mesa card is usable for which type of the motors. I understand the unipolar mode but these are small projects i need to make to learn operation and secondly to write PostProcessors for real machines. These small prototypes i can use here in my office.
I attached a picture of the micro motors i want to be using.
Which board for the MG90S micro servo? ( 6-7motors)
Which board for the ULN2003A with 28BYJ-48 motor (6-7 motors)? ( i found the vhd, but i can not find a corresponding card.)
Thanks,
Stephane
I will be ordering a 7184 mode 3 from mesa for my extra inputs and outputs. This is configurable in the pncconf aswell so i see. Thanks for the help.
@andypugh:
Thanks for the explanation, i have looked at all the links.
Would you happen to know which mesa card is usable for which type of the motors. I understand the unipolar mode but these are small projects i need to make to learn operation and secondly to write PostProcessors for real machines. These small prototypes i can use here in my office.
I attached a picture of the micro motors i want to be using.
Which board for the MG90S micro servo? ( 6-7motors)
Which board for the ULN2003A with 28BYJ-48 motor (6-7 motors)? ( i found the vhd, but i can not find a corresponding card.)
Thanks,
Stephane
Last edit: 19 Oct 2017 09:29 by Marcodi.
Please Log in or Create an account to join the conversation.
19 Oct 2017 10:52 #100547
by andypugh
Replied by andypugh on topic 6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
The 7i85S should be usable. But I can't find any firmware files for the 5i25 that bring the extra stepgen pins out to hardware.
(All stepgens have the pins internally, but the 5i25 / 6i25 firmware chooses whether to connect them to the FPGA IO pins or not).
There is the option of editing a *_34 (34 IO pins indicates a DB25 board) VHD file to make a custom firmware based on the existing firmware.
I have not built firmware for the 5i25, but I have done it for the 5i23. I won't pretend it is a simple process but neither is it impossible.
wiki.linuxcnc.org/cgi-bin/wiki.pl?Editing_MESA_Bitfiles
You will also need the Hostmot2 sourcecode. You can download this from the Mesa website (it is, for some reason, a link under "Specifications" for each FPGA card) or from the LinuxCNC GITHub: github.com/LinuxCNC/hostmot2-firmware
Be aware that the LinuxCNC repository is set up to build bitfiles automatically and uses makefiles. However the Wiki Tutorial is probably the way to go for a one-off special-purpose firmware. The basic firmware source code is the same, however,
(All stepgens have the pins internally, but the 5i25 / 6i25 firmware chooses whether to connect them to the FPGA IO pins or not).
There is the option of editing a *_34 (34 IO pins indicates a DB25 board) VHD file to make a custom firmware based on the existing firmware.
I have not built firmware for the 5i25, but I have done it for the 5i23. I won't pretend it is a simple process but neither is it impossible.
wiki.linuxcnc.org/cgi-bin/wiki.pl?Editing_MESA_Bitfiles
You will also need the Hostmot2 sourcecode. You can download this from the Mesa website (it is, for some reason, a link under "Specifications" for each FPGA card) or from the LinuxCNC GITHub: github.com/LinuxCNC/hostmot2-firmware
Be aware that the LinuxCNC repository is set up to build bitfiles automatically and uses makefiles. However the Wiki Tutorial is probably the way to go for a one-off special-purpose firmware. The basic firmware source code is the same, however,
Please Log in or Create an account to join the conversation.
Moderators: cmorley
- Configuring LinuxCNC
- Configuration Tools
- PnCConf Wizard
- 6i25 (5i25) + 7i85s + 7i85s PNCconf problems and questions
Time to create page: 0.069 seconds