- Posts: 915
- Thank you received: 216
Mesa 7i76E laser diode control (TTL)
- robertspark
- Topic Author
- Offline
- Platinum Member
-
I have a laser diode module I'd like to integrate.
it runs off a 12v supply and uses a pwm TTL (5v) supply to control the beam intensity.
I am ok at being able to signal convert from a 24v output to a 5v output but I was wondering how I would create the pwm signal.
I have read this post, but I was wondering if I needed a custom bit file or could any spare output be a pwm output?
forum.linuxcnc.org/plasma-laser/37068-la...pi-ppmm-pwm?start=10
do I need to do anything special to use it or would m67 by its self be sufficient?
do I need to do anything to specify the pwm carrier wave frequency?
thanks for your time
rob
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
-
- Posts: 17533
- Thank you received: 5334
by using the 7i76e_7i76x1pD.bit firmware. This has the advantage
of having a buffered 5V drive output.
You can also use 7i76e_7i76x1_5abobD.bit which has a
PWMgen on pin 1 of expansion connector P1. In this case I
would suggest using an external buffer/inverter (say a 74ACT04)
so you get a buffered 5V signal and protect the 7I76E from
damage from external EMI or misconnects. (also the inversion
is probably desired so the idle state is low at power on)
Please Log in or Create an account to join the conversation.
- robertspark
- Topic Author
- Offline
- Platinum Member
-
- Posts: 915
- Thank you received: 216
PCW wrote: .
You can also use 7i76e_7i76x1_5abobD.bit which has a
PWMgen on pin 1 of expansion connector P1. In this case I
would suggest using an external buffer/inverter (say a 74ACT04)
so you get a buffered 5V signal and protect the 7I76E from
damage from external EMI or misconnects. (also the inversion
is probably desired so the idle state is low at power on)
thanks very much, going with this option with a buffer/ inverter.
much appreciated for the time and guidance
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
-
- Posts: 17533
- Thank you received: 5334
If the Laser diode controller has a active high PWM,
invert the 7I76Es PWM output in hal since you want to
end up with no net inversion (but a 0 level at startup)
Also if you connect to P1 you can steal 5V for the buffer
if you jumper it to supply cable power
Please Log in or Create an account to join the conversation.
- Archidea
- Offline
- New Member
-
- Posts: 12
- Thank you received: 0
IO Connections for P1:
Pin 1 ; I/O 17 ; PWM ;Chan 0 ; Pin Dir (Out)
I have changed num_pwmgens=1
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
-
- Posts: 17533
- Thank you received: 5334
and connect the PWM value and enable to whatever LinuxCNC
pins you are using to set these, something like:
# 100% full scale
setp hm2_7i76e.0.pwmgen.00.scale100
# 20 KHz?
setp hm2_7i76e.0.pwmgen.pwm_frequency 20000
net laser_pwm_on => hm2_7i76e..0.pwmgen.00.enable
net laser_pwm_value => hm2_7i76e..0.pwmgen.00.value
The two laser_xxx signals must be connected to appropriate LinuxCNC
pins in the hal file
Please Log in or Create an account to join the conversation.
- Archidea
- Offline
- New Member
-
- Posts: 12
- Thank you received: 0
I don't quite understand how linuxcnc will know to output the signal on pin 1 of header P1.
I understand that the below is the pin to be used (1st PIN on P1).
hm2_7i76e.0.gpio.017
net laser_pwm_value => hm2_7i76e..0.pwmgen.00.value => hm2_7i76e.0.gpio.017.out
net [activate_command] => laser_pwm_on
Please Log in or Create an account to join the conversation.
- Archidea
- Offline
- New Member
-
- Posts: 12
- Thank you received: 0
I use 7i76e + 5 axis bob as buffer and the signal is high at power on.
I can invert it with setp hm2_7i76e.0.gpio.009.invert_output true but only after linuxcnc has started.
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
-
- Posts: 17533
- Thank you received: 5334
You could also cheat and put a stiff pulldown resistor on P1 (say 470 Ohm)
Please Log in or Create an account to join the conversation.