This repository contains support files to use NOVUS DigiRail NXprog devices such as NXprog RAMIX 2EA / 2SA / 4ED / 3SD ETH and NXprog RAMIX 2EA / 2SA / 4ED / 2RL ETH with the Arduino IDE.
DigiRail NXprog is an Arduino-compatible device that allows the use of high-level C/C++ programming language, which enables to implement complex algorithms, like recursion logic, state machines, statistical analysis, and mathematic equations. Therefore, this is a big advantage against the complex and old-style of the IEC mid-level programming found in most worldwide PLCs.
The user guide is a short version in English, which only shows the functions that can be used and a summary on how to use DigiRail NXprog.
- The NOVUS NXprog requires NXperience version 2.0.6.00 or above.
- Download the latestes version of NXperience from NOVUS download page and install it.
- Plugin the NXprog.
- Windows will detect the board.
- No driver installation is needed.
- The NOVUS NXprog Core requires Arduino IDE 1.8.6 or above.
- If not installed, download Arduino Desktop IDE
- Follow the download and installation guidelines as described in Install the Arduino Desktop IDE
- After installation, click File->Preferences in the Arduino IDE. A window will appear like the one shown below:
- Click the button next to Additional Boards Manager URLs.
- Add the reference to NOVUS platform definition
https://www.novusautomation.com/en/package_NOVUS_NXprog_index.json
- Save preferences, then open the Boards Manager.
- Search for 'NXprog' in Boards Manager
- Install the NXprog package.
- Close Boards Manager, then click Tools->Board and select your NXproduct under 'NXprog Arduino Boards".
- Plugin the NXprog.
- Click Tools->Port and choose the COM port.
- You can now upload your sketch.
The NXprog Arduino programming language is an extension of the standard Arduino Language and it was designed to be highly compatible with existing Arduino code.
Although most standard functions have the same functionality, there are small differences as listed in the following items.
Digital I/O functions
(see complete document at Standard Digital I/O)
Analog I/O functions
(see complete document at Standard Analog I/O)
Advanced I/O
(see complete document at Advanced I/O)
For all other functions, please refer to Arduino functions reference.
The NXprog extensions to Arduino standard language provide the required functionality to support underlying hardware.
Novus Expert Analog Input
Novus Expert Analog Output
Novus Expert Digital Input
- setMode()
- setFunctionMode()
- setState()
- setConnectionType()
- setDebounce()
- readCounter()
- readTimer()
- setPreset()
- applyPreset()
Novus Expert Digital Output
Configuration Values
Configuration Functions
Special Features
- NXprog Modbus library - Device as Master (Client) / Slave (Server)
- Modbus registers - For use with device in Slave (Server) mode
- Watchdog timer
- Real Time Clock
- EEPROM