The SB110 is a 2-channel Relay board, able to control load up to 1A per channel. The heart of the system is a PIC16F1825 8-bit RISC microcontroller, produced by Microchip Technology Inc. The SB110 is connected to the BB by means of I2C bus. The address of the board could be dynamically set by means of a 4 positions dip switch, allowing up to 15 address values (address 0x00 is reserved for I2C general call broadcast addressing scheme).
|The Mercury System
The Mercury System (MS in short) is a modular system for the development of connectivity and IoT applications. The system uses various type of electronic boards (logic unit, modems, slave boards equipped with sensors and actuators, power boards...) and a complete SW framework to allow the realization of complex applications. Scalability, ease of use and modularity are key factors and are allowed by the use of a heterogeneous set of components that allow to assemble the system like a construction made with LEGO© bricks.
The board set which composes the system is made up by the following “families”:
Slave Boards and Modem Board are provided pre-programmed with a FW which implements a dedicated command set for a high-level management of the board, while the Base Boards are provided with a SW framework which encapsulates all the low-level services (operative system, device drivers, system services, etc.), leaving to the user the development of application level logic only. Moreover, the Base Board comes with an USB bootloader, so it can be programmed without the need of an external programmer.
|Typical System Connection
|Mercury System Framework
The Mercury System Framework (MSF) is a layered SW framework specifically designed to support application development with Mercury System. It provides to the user a complete set of base functionalities to easily interface MS Slave Boards (SB) and Modem Boards (MB) as well as some infrastructural and system services. Figure 12 shows the layered Architecture of the MSF.
|Mercury System Framework Architecture
The framework is made up by the following components:
HAL (Hardware Abstraction Layer): the purpose of this layer is to abstract the HW dependencies to the upper layers.
OSL (Operative System Layer): this layer is made up by a lightweight RTOS that provides basic services to the system, like scheduling tables for the various tasks, Events, SW Timers, Alarms, etc…
|Example of user application positioning inside the MSF
|The Slave Board
In order to develop applications, the Mercury System provides several different Slave Board, each of them containing a specific peripheral (could be a particular sensor, an actuator, a communication device, etc.), managed by a local controller. The MS Slave Boards layout is standardized, in order to simplify the interfacing with the Base Board and ensure and high level of modularity and scalability. Each Slave Board is provided with a I2C (Inter Integrated Circuit) communication line and a four position dip-switch to dynamically set the bus address of the Slave Board. Addresses from 0x01 to 0x0F are available for the Slaves, while address 0x00 is reserved for broadcast communication. In this way up to 15 devices can be connected to the Base Board using the dynamic addressing scheme. This number can be even increased by reprogramming the Slave with a software provided address. Moreover, two open-collector digital lines connected to the Base Board external interrupts are provided for the Slave Boards that need to provide async interrupts. Moreover, slave Boards that need an higher bandwidth and peer-to-peer communication can be interfaced using an additional UART channel.
There are several sub-families of Slave Boards:
Table provides some examples for each sub-family
Mercury System SB110 – Relay Slave Board
- Brand: Futura Group Srl
- Product Code: 7305-SB110
- Availability: In Stock