Как сделать мигающий индикатор?

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Фрост
Мастер
Сообщения: 393
Зарегистрирован: 28 окт 2013, 00:18
Репутация: 23
Настоящее имя: Сергей
Контактная информация:

Как сделать мигающий индикатор?

Сообщение Фрост »

допустим при estop-off с частотой 5гц, при machine-off с частотой 1гц
Не нашел ничего похожего кроме siggen , но не понял, как его применить

• (float) siggen.<chan>.sine - Sine wave output.
• (float) siggen.<chan>.cosine - Cosine output.
• (float) siggen.<chan>.sawtooth - Sawtooth output.
• (float) siggen.<chan>.triangle - Triangle wave output.
• (float) siggen.<chan>.square - Square wave output.
All five outputs have the same frequency, amplitude, and offset.
In addition to the output pins, there are three control pins:
• (float) siggen.<chan>.frequency - Sets the frequency in Hertz, default value is 1 Hz.
• (float) siggen.<chan>.amplitude - Sets the peak amplitude of the output waveforms, default is 1.
• (float) siggen.<chan>.offset - Sets DC offset of the output waveforms, default is 0.

Допустим siggen.<chan>.square через float-bit соединю на выход, siggen.<chan>.frequency в зависимости от условий получит нужную частоту, а что его запустит допустим при смене machine-off с 0 на 1? Или принципиально не так думаю?
alex_sar
Мастер
Сообщения: 1848
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 314
Настоящее имя: Алексей
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение alex_sar »

через and2 можно соединить с machine-off. есть ещё mux_generic

а принципиально... проще вторую лампочку поставить )
Фрост
Мастер
Сообщения: 393
Зарегистрирован: 28 окт 2013, 00:18
Репутация: 23
Настоящее имя: Сергей
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение Фрост »

Лампочки есть) Но неужели для программы, умеющей управлять станком, мигать лампочкой суперсложная задача?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5182
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение Serg »

Неужели нарисовать простую схему на цифровой логике такая суперсложная задача?.. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
alex_sar
Мастер
Сообщения: 1848
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 314
Настоящее имя: Алексей
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение alex_sar »

Фрост писал(а):Лампочки есть) Но неужели для программы, умеющей управлять станком, мигать лампочкой суперсложная задача?
что непонятно-то?
делайте несколько генераторов, подавайте их на входы mux_generic
выбор входа от сигналов machine-on, e-stop и чего хотите.
выход mux_generic - на лампочку
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение nkp »

http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=1925
мигалка на ладдере в первом посте
Pont
Кандидат
Сообщения: 65
Зарегистрирован: 27 фев 2016, 19:56
Репутация: 4
Настоящее имя: Алексей
Откуда: Н.Новгород
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение Pont »

Можно сделать переключатель на 2 компонентах xor2 & timedelay...

loadrt xor2 count=1
loadrt timedelay count=1
addf xor2.0 servo-thread
addf timedelay.0 servo-thread
net external <= xor2.0.in0
net loop <= xor2.0.in1 <= timedelay.0.out
net controlled <= xor.0.out <= timedelay.0.in
net controlled => к_вводу_управляемого_устройства
setp timedelay.0.on-delay число_float
setp timedelay.0.off-delay число_float

Время включения и задержка между включениями задаются параметрами on-delay, off_delay компонента timedelay.
external - внешний сигнал управления.
Любая задача имеет как минимум два решения!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5182
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение Serg »

Нужно мигать двумя разными частотами... :)
Нужен 1 siggen и 1 mux4. Кто меньше? :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Pont
Кандидат
Сообщения: 65
Зарегистрирован: 27 фев 2016, 19:56
Репутация: 4
Настоящее имя: Алексей
Откуда: Н.Новгород
Контактная информация:

Re: Как сделать мигающий индикатор?

Сообщение Pont »

В моём случае можно менять частоту через mux2-8 пользуясь halui.program.is-idle ... и др, или нагородить свой компонент.
+++++++
Меньше чем 2 будет только компонент решающий эту задачу.
Любая задача имеет как минимум два решения!
Ответить

Вернуться в «LinuxCNC»