Есть проволочновырезной станок. Если скорость подачи низкая - то станок работает не эфективно. Если скорость подачи большая - то не успевает прорезать, происходит короткое замыкание и проволока рвется.
В родной ЧПУ, аналоговое напряжение около 120v подается через делитель на микроконтроллер. Родной ЧПУ выбросили, так как это китайский "калькулятор" Re: Что я урвал, хвастаемся покупками, завидуем и облизываем #2757
Пробуем все перевести на Lcnc. управление через LPT. Чтобы не покупать дорогих плат MESA под аналоговое задание - появилась такая мысля:
Берется Ардуина + делитель напряжения. Ардуина измеряет напряжение и выдает два дискретных сигнала UP и Down (добавить или убавить скорость подачи). В Ардуине задаем "держать" напряжение например 100v и гистерезис.
Ардуина измеряет напряжение, если напряжение >100v выдает сигнал Up=1. Который получает Lcnc и увеличивает скорость подачи с 50% +1% = 51% , проволока быстрее двигается, уменьшается МЭЗ и напруга падает. Если зазор слишком маленький <90v. Ардуина выдает сигнал Down=1. Lcnc его получает и сбрасывает скорость 51%-1%.
Скорость реакции системы можно сделать в Lcnc или попробовать написать в Ардуине.
Получается нечто вроде ТНС как для плазмы, но у плазмы двигается ось Z вверх/вниз, а нам нужно менять скорость подачи в LCNC в зависимости от внешних сигналов.
С Nick переписывались в ЛС. Вот что пока надумал и Nick
Nick писал(а):Да, для этого есть пин
motion.adaptive-feed IN FLOAT
When adaptive feed is enabled with M52 P1, the commanded velocity is multiplied by this value. This effect is multiplicative with the NML-level feed override value and motion.feed-hold.
Или
Feed Override
halui.feed-override.count-enable (bit, in) - must be true for counts or direct-value to work.
halui.feed-override.counts (s32, in) - counts * scale = FO percentage. Can be used with an encoder or direct-value.
halui.feed-override.decrease (bit, in) - pin for decreasing the FO (-=scale)
halui.feed-override.increase (bit, in) - pin for increasing the FO (+=scale)
halui.feed-override.direct-value (bit, in) - false when using encoder to change counts, true when setting counts directly. The count-enable pin must be true.
halui.feed-override.scale (float, in) - pin for setting the scale for increase and decrease of feed-override.
halui.feed-override.value (float, out) - current FO value


