Roadmap What isn't done - Longus/FluidNC GitHub Wiki
- Dynamixel Servos
- Unipolar Motors
- More probes and options
- Cloud instance of the firmware using qemu
- Backlash compensation
- THC Spindle - Plasma cutter torch height control
- Solenoid motor for pen lift, etc - See SolenoidMotor branch
A cloud instance of FluidNC would allow people to validate config files online. This could help us support config issues easier. Online config creation tools could use this as a validator. Some sort of archive could be be useful as examples and again for support.
Links
A typical use for this would be a pen lift on a drawing machine. It is acting like a motor on the Z axis. If the machine position (MPos) is greater than 0, the solenoid will activate. The solenoid will initially pull at a peak power level, hold that for a short period, then reduce to a hold power level. This will allow long hold times without overheating.
The axis is using resolution, speed and acceleration virtually. It still takes time to move. If you send the axis to 1mm from 0, it will immediately activate the solenoid as soon as the virtual axis takes its first step. If you send it down from 1 to 0, there will be a delay as the virtual axis moves to 0. The solenoid will then release. It is recommended to set the resolution to about 40. It does not really play too much into the accuracy, but high numbers waste CPU time.
At homing the the axis position will be updated to the axes/<axis>/homing/mpos value. If that value is above 0 the solenoid will activate.
Disable works like all other axes. It will deactivate after stepping/idle_ms if that value is less than 255. $MD or $MD=<axis> will manually disable the solenoid.
There is currently no way to reverse the direction (mpos < 0 activates). That would need another key.
a:
steps_per_mm: 40
max_rate: 5000
acceleration: 100
max_travel: 1
homing:
cycle: 1
mpos: 1
positive_direction: false
feed_rate: 100.000
seek_rate: 200.000
debounce_ms: 500
motor0:
limit_neg: NO_PIN
limit_pos: NO_PIN
limit_all: NO_PIN
hard_limits: false
pulloff: 0.00
solenoid:
output_pin: gpio.12
pwm_freq: 5000
peak_duty: 100.000
peak_ms: 250
hold_duty: 20.000