В hal есть пины:aegis писал(а):такое можно и на рассыпухе сделать. даже на релюхах. вот собственно интересно, можно ли заставить линукс выдавать сигнал номера инструмента, используя скажем шифр номера в двоичном коде.
iocontrol.0.tool-change
(Bit, Out) TRUE when a tool change is requested - становится 1 конгда надо менять инструмент
iocontrol.0.tool-changed
(Bit, In) Should be driven TRUE when a tool change is completed. - нужно поставить в 1 когда головка поменяет инструмент
iocontrol.0.tool-number
(s32, Out) Current tool number - номер текущего инструмента
iocontrol.0.tool-prep-number
(s32, Out) The number of the next tool, from the RS274NGC T-word - Номер инструмента, который надо будет поставить. Его можно устанавливать заранее, если есть отдельный магазин инструментов, который можно перемещать отдельно от станка.
Остальные не так важны:
iocontrol.0.tool-prep-pocket
(s32, Out) The pocket number (location in tool storage mechanism) of the next tool, as described in the tool table
iocontrol.0.tool-prepare
(Bit, Out) TRUE when a Tn tool prepare is requested
iocontrol.0.tool-prepared
(Bit, In) Should be driven TRUE when a tool prepare is completed.
Все эти пины можно обрабатывать внешними компонентами, в том числе ClassicLadder или скриптами на питоне, sh, и прочими.