Files
f.bittiandClaude Opus 5 4a01a2ec88 Plancia configurabile su Modbus RTU
Due programmi che condividono uModbusRTU e uGauge:

- Console/PlanciaConsole: plancia nautica descritta da file XML, con
  modalita' plancia e modalita' configurazione. Comandi, spie, selettori,
  strumenti e allarmi sonori; il bus gira in un thread suo perche' la
  finestra non si fermi mai.
- ProjectPlancia: il programma di prova piu' vecchio, usato per collaudare
  i canali.

Le plance sono in Console/*.xml, la documentazione in Console/LEGGIMI.md.
Esclusi dal versionamento i compilati (.exe, .dcu), i file dell'IDE e un
audio da 17 MB.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 16:56:34 +02:00

225 lines
4.4 KiB
ObjectPascal

object MainForm: TMainForm
Left = 0
Top = 0
Caption = 'Plancia ZEBRA - Controllo RS485'
ClientHeight = 620
ClientWidth = 820
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = 'Segoe UI'
Font.Style = []
Position = poScreenCenter
OnCreate = FormCreate
OnDestroy = FormDestroy
TextHeight = 15
object pnlTop: TPanel
Left = 0
Top = 0
Width = 820
Height = 110
Align = alTop
TabOrder = 0
ExplicitWidth = 814
object lblPort: TLabel
Left = 16
Top = 16
Width = 62
Height = 15
Caption = 'Porta COM:'
end
object lblBaud: TLabel
Left = 160
Top = 16
Width = 30
Height = 15
Caption = 'Baud:'
end
object lblStatus: TLabel
Left = 448
Top = 15
Width = 104
Height = 15
Caption = 'Stato: Disconnesso'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = 'Segoe UI'
Font.Style = [fsBold]
ParentFont = False
end
object lblSlaveRele: TLabel
Left = 16
Top = 60
Width = 52
Height = 15
Caption = 'Slave rel'#232':'
end
object lblSlaveIO: TLabel
Left = 160
Top = 60
Width = 50
Height = 15
Caption = 'Slave I/O:'
end
object lblSlaveAnalog: TLabel
Left = 300
Top = 60
Width = 72
Height = 15
Caption = 'Slave analog.:'
end
object cboPort: TComboBox
Left = 16
Top = 34
Width = 121
Height = 23
Style = csDropDownList
TabOrder = 0
end
object cboBaud: TComboBox
Left = 160
Top = 34
Width = 121
Height = 23
Style = csDropDownList
TabOrder = 1
end
object btnConnect: TButton
Left = 448
Top = 41
Width = 100
Height = 30
Caption = 'Connetti'
TabOrder = 2
OnClick = btnConnectClick
end
object edtSlaveRele: TEdit
Left = 92
Top = 57
Width = 40
Height = 23
TabOrder = 3
Text = '1'
end
object edtSlaveIO: TEdit
Left = 226
Top = 57
Width = 40
Height = 23
TabOrder = 4
Text = '2'
end
object edtSlaveAnalog: TEdit
Left = 386
Top = 57
Width = 40
Height = 23
TabOrder = 5
Text = '5'
end
object CBReadInput: TCheckBox
Left = 451
Top = 77
Width = 97
Height = 17
Caption = 'Leggi Ingressi'
Checked = True
State = cbChecked
TabOrder = 6
end
object CBReadAnalog: TCheckBox
Left = 560
Top = 77
Width = 113
Height = 17
Caption = 'Leggi Analogici'
TabOrder = 7
end
end
object pgcMain: TPageControl
Left = 0
Top = 110
Width = 820
Height = 380
ActivePage = tsInterruttori
Align = alClient
TabOrder = 1
ExplicitWidth = 814
ExplicitHeight = 363
object tsInterruttori: TTabSheet
Caption = 'Interruttori'
object pnlInterruttori: TPanel
Left = 0
Top = 0
Width = 812
Height = 350
Align = alClient
BevelOuter = bvNone
TabOrder = 0
ExplicitWidth = 806
ExplicitHeight = 333
end
end
object tsPulsanti: TTabSheet
Caption = 'Pulsanti'
ImageIndex = 3
object pnlPulsanti: TPanel
Left = 0
Top = 0
Width = 812
Height = 350
Align = alClient
BevelOuter = bvNone
TabOrder = 0
end
end
object tsInputs: TTabSheet
Caption = 'Ingressi Binari'
ImageIndex = 1
object pnlInputs: TPanel
Left = 0
Top = 0
Width = 812
Height = 350
Align = alClient
BevelOuter = bvNone
TabOrder = 0
end
end
object tsAnalog: TTabSheet
Caption = 'Analogici'
ImageIndex = 2
object pnlAnalog: TPanel
Left = 0
Top = 0
Width = 812
Height = 350
Align = alClient
BevelOuter = bvNone
TabOrder = 0
end
end
end
object mmoLog: TMemo
Left = 0
Top = 490
Width = 820
Height = 130
Align = alBottom
ReadOnly = True
ScrollBars = ssVertical
TabOrder = 2
ExplicitTop = 473
ExplicitWidth = 814
end
object tmrPoll: TTimer
Enabled = False
Interval = 500
OnTimer = tmrPollTimer
Left = 760
Top = 16
end
end