system.device.addDevice
This function is used in Python Scripting.
Description
Adds a new device connection in Ignition. Accepts a dictionary of parameters to configure the connection. Acceptable parameters differ by device type: i.e., a Modbus/TCP connection requires a hostname and port, but a simulator doesn't require any parameters.
When using this function, the arguments MUST be passed in as keyword arguments.
Client Permission Restrictions
Permission Type: Device Management
Client access to this scripting function is blocked to users that do not meet the role/zone requirements for the above permission type. This function is unaffected when run in the Gateway scope.
Syntax
system.device. addDevice(deviceType, deviceName, deviceProps)
Parameters
Type | Parameter | Description |
---|---|---|
String | deviceType | The device driver type. Possible values are listed in the Device Types table below. |
String | deviceName | The name that will be given to the the new device connection. |
Returns
Nothing
Scope
All
Device Types
Note that this function may be called to add devices using 3rd party drivers: you simply need the driver type, which the module developer will be able to provide.
Driver Name | Device Type |
---|---|
Legacy Allen-Bradley CompactLogix | CompactLogix |
Legacy Allen-Bradley ControlLogix | ControlLogix |
Simulators Dairy Demo Simulator | DairyDemoSimulator |
DNP3 Driver | Dnp3Driver |
Allen-Bradley Logix Driver | LogixDriver |
Allen-Bradley MicroLogix | MicroLogix |
Modbus RTU | ModbusRtuOverTcp |
Modbus TCP | ModbusTcp |
Omron NJ Driver | com.inductiveautomation.omron.NjDriver |
Allen-Bradley PLC5 | PLC5 |
Siemens S7-300 | S7300 |
Siemens S7-400 | S7400 |
Siemens S7-1200 | S71200 |
Siemens S7-1500 | S71500 |
Allen-Bradley SLC | SLC |
Simulators SLC Simulator | SLCSimulator |
Simulators Generic Simulator | Simulator |
TCP Driver | TCPDriver |
UDP Driver | UDPDriver |
Device Properties
The deviceProps
parameter is where you supply configuration values to the new connection. Value properties depend on which deviceType was specified. A listing of deviceProps keys can be found on the system.device.addDevice - deviceProps Listing page.
The keys in the deviceProps
parameter are case-insensitive. Device properties not specified in the deviceProps parameter will fallback to default values if not specified (where applicable: i.e., "hostname" typically does not have a default value).
Code Examples
# Below is an example of creating a new Generic Simulator device connection.
# Note that we MUST pass a dictionary as the 3rd parameter, even if it's empty.
# Call the function
system.device.addDevice(deviceType = "Simulator", deviceName = "New_Generic_Simulator", deviceProps = {})
# Add a device using the Allen-Bradley Logix Driver for firmware v21+ devices
deviceProps = {}
deviceProps["Hostname"] = "192.168.1.2"
system.device.addDevice(deviceName="Test1", deviceType="LogixDriver", deviceProps=deviceProps)
# Below is an example of creating a new S7-1500 device connection.
# Build a Dictionary of parameters
newProps = {
"HostName" : "10.0.0.1",
"Port" : 102 # <---If adding additional parameters, make sure to add a comma.
}
# Call the function
system.device.addDevice(deviceType = "S71500", \
deviceName = "My_S7_1500_Device",\
deviceProps = newProps)