© Copyright 2006 / Intermark
Programmazione dei Sistemi AMX
San Sepolcro, 19 Maggio 2006
Ing.Andrea Tamagnini
© Copyright 2006 / Intermark
I Software AMX: Netlinx Studio, Visual Architect,
TPDesign4, G4 Panel Builder, Cafè Duet
AMX mette a disposizione differenti ambienti di
programmazione per i differenti skill degli
sviluppatori di tutto il mondo: ambienti di sviluppo
tradizionali, ambienti di sviluppo grafici, ambiente di
sviluppo Java
© Copyright 2006 / Intermark
3
Netlinx Studio 2.0
Ambiente di sviluppo tradizionale a linee di codice
con avanzate funzionalità di diagnostica a Workspace
compatibile con i sistemi Netlinx e Axcent
© Copyright 2006 / Intermark
4
L’interfaccia grafica del Netlinx Studio
© Copyright 2006 / Intermark
5
Configurazione e Indirizzamento
dei Sistemi NetLinx
© Copyright 2006 / Intermark
Device:Port:System
Quando un Touch panel è connesso al sistema
NetLinx il cui system ID è 1, verrà “visto” come
dispositivo 10128:1:1 o 10128:1:0 (code).
© Copyright 2006 / Intermark
7
D:P:S = 10128:1:1
Settaggi di un Progetto in NetLinx Studio
Esempio di come vengono indirizzati I vari
compnenti di un sistema controllato da AMX:
Autopatch A/V Switcher
Sony (SVO1620) VCR
JVC (AV2760) TV
RCA (DS4430RW) Sat receiver
Sony (VPLV800Q) Video Projector
AMX (NXT-CV7) TouchPanel
AMX (NI2000) Relay
AMX (NI2000) Input Output
© Copyright 2006 / Intermark
8
- RS232 Control
- IR Control
- IR Control
- IR Control
- IR Control
Struttura del Codice in NetLinx
Messages
Communications
Bus
Message
Dispatcher
Connection
Manager
Message
Queue
1. Service All Waits
2. Turn off Expired Pulses
DEFINE_EVENTS
Event Handlers
Next Message
Message not Handled
or
No More Messages
DEFINE_PROGRAM
Mainline
End of Program
Next Message
© Copyright 2006 / Intermark
9
Tutto si basa su eventi : DEFINE_EVENT
Cinque tipi differenti di eventi:
BUTTON_EVENT
CHANNEL_EVENT
DATA_EVENT
LEVEL_EVENT
TIMELINE_EVENT
© Copyright 2006 / Intermark
10
BUTTON_EVENT
A BUTTON_EVENT occurs when an Input
Channel turns on and off
When you think about events which may occur
in relation to a button in a Control System the
events will fall into one of three categories:
What happens when the button is pushed
What happens when the button is released
What happens while the button is held
© Copyright 2006 / Intermark
11
BUTTON_EVENT
BUTTON_EVENT [<device>,<channel>]
{
PUSH:
{
// push event handler code
}
RELEASE:
{
// release event handler code
}
HOLD [<time>,[REPEAT]]:
{
// hold event handler code
}
}
© Copyright 2006 / Intermark
12
BUTTON_EVENT
Quale informazione descrive un
BUTTON_EVENT?
Channel number of the button
The D:P:S device number of the device generating
the BUTTON_EVENT
The individual Device Number, Port and System ID
used for the D:P:S
The amount of time the button has been held
© Copyright 2006 / Intermark
13
Proprietà di BUTTON_EVENT
Property Name
Type
Description
Button.Input
DEVCHAN
[device,channel]
Button.Input.Device
DEV
Device
Button.Input.Device.Number
Integer
Device Number
Button.Input.Device.Port
Integer
Device Port Number
Button.Input.Device.System
Integer
Device System
Number
Button.Input.Channel
Integer
Channel
Button.Holdtime
Long
Current hold time
(milliseconds)
© Copyright 2006 / Intermark
14
CHANNEL_EVENT
CHANNEL_EVENTs occur when an output
channels are turned on and off
Channel_Events are very simple and only
have two conditions:
What happens when the channel turns on
What happens when the channel turns off
© Copyright 2006 / Intermark
15
CHANNEL_EVENT
CHANNEL_EVENT [<device>,<channel>]
{
ON:
{
// on event handler code
}
OFF:
{
// off event handler code
}
}
© Copyright 2006 / Intermark
16
CHANNEL_EVENT
Quale informazione descrive un
CHANNEL_EVENT?
Channel number of the device
The D:P:S Device number of the relay card that
contains the relay
The individual Device number, Port and System ID of
the D:P:S device number
© Copyright 2006 / Intermark
17
Input Characteristics
Quando si preme un pulsante sul touch
screen la funzione input del pulsante invia
un “input change” all’unità di controllo.
Input
System
Master
© Copyright 2006 / Intermark
18
Controlling Something Over There
L’idea base di un sistema per il controllo
remoto è quella di inviare comandi o
macro-comandi ( + comandi in
successione ) ad un apparato
© Copyright 2006 / Intermark
19
© Copyright 2006 / Intermark
Getting Started
PanelBuilderStyle
Environment
System
Device
List
Devices to
add to
system
Device
Properties
© Copyright 2006 / Intermark
21
Add a System Controller
© Copyright 2006 / Intermark
22
Add a Touch Panel
© Copyright 2006 / Intermark
23
Add a Wireless Access Point
ActiveConnect
© Copyright 2006 / Intermark
24
Add a Network Switch
© Copyright 2006 / Intermark
25
Add another Touch Panel
© Copyright 2006 / Intermark
26
Add a Keypad
© Copyright 2006 / Intermark
27
Add a Device
© Copyright 2006 / Intermark
28
Add Another Device
© Copyright 2006 / Intermark
29
And Another…
© Copyright 2006 / Intermark
30
And Another…
© Copyright 2006 / Intermark
31
And Another…
© Copyright 2006 / Intermark
32
And Another…
© Copyright 2006 / Intermark
33
And Another
© Copyright 2006 / Intermark
34
What if it’s an IR Device?
© Copyright 2006 / Intermark
35
Simplified IR Capture
Function
Templates
based on
Duet API
© Copyright 2006 / Intermark
36
Select
functions
to capture
Minimal keyboard/mouse interaction
Simplified IR Capture
Select device
characteristics
Minimal keyboard/mouse interaction
© Copyright 2006 / Intermark
37
Simplified IR Capture
Automatically
advances to
next function
Minimal keyboard/mouse interaction
© Copyright 2006 / Intermark
38
What about Serial and IP Devices?
Similar to
IR Capture
© Copyright 2006 / Intermark
39
User Interface Design
Tab for
each User
Interface
© Copyright 2006 / Intermark
40
KeypadBuilder-Style Keypad Design
© Copyright 2006 / Intermark
41
HOME
UP
ENTER
DOWN
PLAY
STOP
PAUSE
PWR
FFWD
REV
SFWD
SREV
PanelBuilder-Style Touch Panel Design
Embedded
G4API
codes in
Templates
© Copyright 2006 / Intermark
42
Edit Device Names
© Copyright 2006 / Intermark
43
Edit Device Names
© Copyright 2006 / Intermark
44
Edit Device Names
© Copyright 2006 / Intermark
45
Edit Device Names
© Copyright 2006 / Intermark
46
Edit Device Names
© Copyright 2006 / Intermark
47
Edit Device Names
© Copyright 2006 / Intermark
48
Edit Device Names
© Copyright 2006 / Intermark
49
Add Menu Navigation
© Copyright 2006 / Intermark
50
Add Menu Navigation
© Copyright 2006 / Intermark
51
Add Menu Navigation
© Copyright 2006 / Intermark
52
Connect Navigation Nodes
© Copyright 2006 / Intermark
53
Connect Navigation Nodes
© Copyright 2006 / Intermark
54
Connect Devices
© Copyright 2006 / Intermark
55
Connect Devices
© Copyright 2006 / Intermark
56
Connect Devices
© Copyright 2006 / Intermark
57
Connect Devices
© Copyright 2006 / Intermark
58
Connect Devices
© Copyright 2006 / Intermark
59
Connect Devices
© Copyright 2006 / Intermark
60
Connect Devices
© Copyright 2006 / Intermark
61
Complete the Navigation Loop
© Copyright 2006 / Intermark
62
Complete the Navigation Loop
© Copyright 2006 / Intermark
63
Edit Panel Pages
Add/Remove
buttons
Device
pages and
popups
Edit text
© Copyright 2006 / Intermark
64
Even Add More Devices
© Copyright 2006 / Intermark
65
Also Added to System and Other UI Views
© Copyright 2006 / Intermark
66
What about automation?
CodeBuilder
© Copyright 2006 / Intermark
67
CodeBuilder Functions
Functions for
every system
device
© Copyright 2006 / Intermark
68
CodeBuilder Status
Status for
every system
device
© Copyright 2006 / Intermark
69
CodeBuilder Options
Conditionals
and Delays
© Copyright 2006 / Intermark
70
Creiamo una macro SHOWTIME
© Copyright 2006 / Intermark
71
Check VCR Power
© Copyright 2006 / Intermark
72
Turn on VCR Power
© Copyright 2006 / Intermark
73
Check and turn on Plasma
© Copyright 2006 / Intermark
74
Check and turn on Receiver
© Copyright 2006 / Intermark
75
Wait for equipment to power on
© Copyright 2006 / Intermark
76
Change Surround to Movie Mode
© Copyright 2006 / Intermark
77
Play the Tape
© Copyright 2006 / Intermark
78
1. Progetto del Sistema
2. Progetto della User Interface
3. Progetto Macro
Cosa fa in aggiunta VisualArchitect ?
© Copyright 2006 / Intermark
79
VisualArchitect Outputs
Generates and Compiles
Application Program
UI Files
IR Files
System Report
Downloads Files
System Program
Duet Modules
IR Files
Touch Panel Files
Keypad Files
System Report
It even reboots the system
© Copyright 2006 / Intermark
80
VisualArchitect Outputs
System Report
AMX Equipment List
Addressing
MSRP Pricing
3rd Party Devices
System Wiring
UI Programming
Macro Programming
Duet Modules
IR Files
User Interface Files
© Copyright 2006 / Intermark
81
AMX System Design Library
© Copyright 2006 / Intermark
82
© Copyright 2006 / Intermark
83
Un unico strumento di programmazione….semplice