You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FIN Framework (FIN) is a software framework with application suites that can integrate, control, manage, analyze, visualize and connect. Its capabilities can be integrated by OEMs into a range of products and services.
20
+
21
+
This article will show you how to use the `Logic Builder` of FIN Framwork, and to implement an alarm using the `Logic Builder`.We monitor the value of a Modbus device. When the value exceeds the critical value, FIN will alarm.
22
+
23
+
## Getting Start
24
+
25
+
Before you start this project, you may need to prepare your hardware and software in advance as described here.
<strong><span><font color={'FFFFFF'} size={"4"}> Get One Now 🖱️</font></span></strong>
42
+
</a></div></td>
43
+
</tr>
44
+
</table>
45
+
</div>
46
+
47
+
### Software Preparation
48
+
* Regarding how to install FIN Framwork, you can refer to this [wiki](https://wiki.seeedstudio.com/reComputer_r1000_install_fin/).
49
+
* About reComputer R1000 using FIN for Modbus communication, you can refer to this [wiki](https://wiki.seeedstudio.com/reComputer_r1000_use_rs485_modbus_rtu/).
50
+
* Using [modbusmechanic](https://modbusmechanic.scifidryer.com/) on W10 PC.You can also use other modbus testing tools.
51
+
### Hardware Configuration
52
+
53
+
For ModbusTCP, we use Ethernet cables to connect the W10 PC and reComputer R1000 to a switch to ensure that they are on the same network segment.
-**Description** - Description for what the program is for/does
70
+
-**Program On** - Used to specify what the program will run on
71
+
-**Points** - Able to choose points from the equip to use
72
+
-**Tags** - Find tags used on equip or refs
73
+
-**Project Variables** - If other project variables exist on other programs, it provides a list of variables that can be used in the new program being create
74
+
-**Absolute Points** - Able to add hardcoded points based on their id
75
+
76
+
`Points` can enter multiple points, but we only entered one here. After filling in the information, click `OK` and click `Edit` in the pop-up window on the right to enter the Logic editing interface.
**Step 1**: Add an `if` block. There are two ways to add blocks in the workspace. The first is to click on the port of a block to add it, as shown in the figure:
**Step 2**: Add the data points to be judged. On the left, you can see the data points we introduced when we created the Logic Builder program. It has two functions: `get` and `set`. Our logic is to determine whether the sensor value exceeds the critical value, so we choose `get` here. . Click `get` and drag it into the workspace, and a `sensor` block will appear.
**Step 3**: Add the `>=` block. We need to determine whether the sensor value exceeds the critical value, so we need to add a `>=` block, which will output a result to the `if` block. The `if` block determines the next step by judging the result of the `>=` block. action. Here we set the critical value to `23`.
**Step 4**: Add a delay block. Sometimes we need to make the system more anti-interference, we can add a delay module, and the alarm will only occur after a certain condition is met for a certain period of time. We set the delay time to 3s and connect the output of the module to the `if` block.
**Step 5**: Create variables. When the sensor value exceeds the critical value, we can set a flag to mark the sensor value as abnormal. This flag can be implemented by creating a `variable`. `variable` has the following types:
As shown in the figure, we added a variable named `Alarm_bool`, which also has `set` and `get` function blocks. We connect the `set` block of `Alarm_bool` after the `if` block. When the sensor value exceeds the critical value, it is set to `True`. When the sensor does not exceed the critical value, it is set to `False`.
**Step 6**: Click `alarm` at the top to enter the `alarm` configuration interface. Type `alarm` in the lower left corner to find `alarmBlock` and drag it into the workspace. We need to select the `Alarm_bool` variable we created for `alarmBlock`. When the `Alarm_bool` variable is `True`, the alarm will be triggered, and when the `Alarm_bool` variable is `False`, the alarm will not be triggered.
Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs.
FIN Framework (FIN) is a software framework with application suites that can integrate, control, manage, analyze, visualize and connect. Its capabilities can be integrated by OEMs into a range of products and services.
19
19
20
-
This article introduces how to use the `Modbus Connector` of `FIN Framwork`, which mainly includes three aspects: creating a `FIN Framwork` project, configuring the `Modbus Connector`, and adding data points to `Equip`.
20
+
This article introduces how to use the `Modbus Connector` of `FIN Framwork`, the use of Modbus TCP/RTU in FIN Framwork was explained in detail. which mainly includes three aspects: creating a `FIN Framwork` project, configure `serial port number`, configuring the `Modbus Connector`, and adding data points to `Equip`.
21
21
22
22
## Getting Start
23
23
@@ -45,13 +45,19 @@ Before you start this project, you may need to prepare your hardware and softwar
45
45
46
46
### Software Preparation
47
47
* Regarding how to install FIN Framwork, you can refer to this [wiki](https://wiki.seeedstudio.com/reComputer_r1000_install_fin/).
48
+
* Regarding how to use the modbus function of reComputer R1000, you can refer to this [wiki](https://wiki.seeedstudio.com/reComputer_r1000_use_rs485_modbus_rtu/).
48
49
* Using [modbusmechanic](https://modbusmechanic.scifidryer.com/) on W10 PC.You can also use other modbus testing tools.
49
50
### Hardware Configuration
50
51
51
52
For ModbusTCP, we use Ethernet cables to connect the W10 PC and reComputer R1000 to a switch to ensure that they are on the same network segment.
**Step 1**: Click the `Create` button in the lower left corner of the homepage, and a new pop-up window will appear. The pop-up window mainly has three attributes that need to be filled in:
57
63
- NAME: the name of the new project
@@ -64,7 +70,7 @@ For ModbusTCP, we use Ethernet cables to connect the W10 PC and reComputer R1000
**Step 1**: Open `Modbus Connector`. Click `Settrings => Ext` and find `Modbus`. At this time, `Modbus` is marked in red. Click `Enable` and you can see that the `Modbus` mark turns green, indicating that the `Modbus Connector` has been successfully opened. Enter `DB Builder` again and you can see that there is already a `Modbus` option.
70
76
@@ -75,8 +81,17 @@ For ModbusTCP, we use Ethernet cables to connect the W10 PC and reComputer R1000
75
81
- ModbusSlave: this would be the slave of the modbus device being connected (default is 1)
76
82
- Existing Register Map: If the user already configured a Modbus connector, they would see available registers here to choose from or create a new one with the next property ModbusRegMapUri.
77
83
- ModbusRegMapUri: this is where the user would specify the name of the register map to link with this connector. Replace "xxx" with whatever the name of the register map is.
78
-
- Uri: this is where the uri of the modbus connector would be specified.
79
-
84
+
- Uri: this is where the uri of the modbus connector would be specified.The format of URI is as shown in the table:
## Restart the FIN service, wait for a while and then use a browser to open FIN
178
+
sudo systemctl restart fin
179
+
180
+
```
181
+
**Step 1**: Turn off FIN service, then download [config file](https://drive.google.com/file/d/1j1aGGSsGPjGCYfUGcXTqL2XGP2EuqFw2/view?usp=share_link) and save it to `/opt/finFramework_5.1.6 .55/etc/finStackSerial/` directory
**Step 3**:Click on `Folio => launch`,and insert the following query:`serialPorts()`, The result will show which name has to be used for your specific port.The port is not the name of the physical port, but there is a match between the physical ports of the device and the name of the port to be used like `serial0`, `serial1` ...
**Step 1**: Open `Modbus Connector`. Click `Settrings => Ext` and find `Modbus`. At this time, `Modbus` is marked in red. Click `Enable` and you can see that the `Modbus` mark turns green, indicating that the `Modbus Connector` has been successfully opened. Enter `DB Builder` again and you can see that there is already a `Modbus` option.
**Step 2**: Add a new Modbus connection. Click `Modbus => Add`.In our example, we specified "r1000_demo_rtu" as our register map. Then added our serial port to the device in the Uri.
**Step 3**: Add a new `Register Maps`. Click `Register Maps => Add`, enter `Name`, which needs to be consistent with the name of `ModbusRegMapUri` in the second step, and finally click `ADD`.
The system will create a new `r1000_demo_rtu.csv` file in the `opt/finFramework_5.1.6.55/var/proj/recomputer_R1000_demo/data/modbus/` directory. This file describes the Modbus register information we need to read.
211
+
212
+
**Step 4**: Add the register information to be read. `Modbus Connector` exists as a Modbus master. It will read the registers of the slave. We need to configure the register information to be read. Click `r1000_demo_rtu`, you can see that there is a description of `ping` by default, this is a must. We continue to add new register information and click `Register Maps => r1000_demo_rtu => Add`.
**Step 5**: Communication test. After adding the description information of the register, communication can be carried out. Here we use `ModbusMechanic` as the Modbus slave. Click `Modbus => Ping` and you can see that `Status` changes to `OK`, indicating that the communication is normal.
**Step 1**: add `Equip`. Click `Equip Tree => + => Add site`, enter `Name`, here I enter `Tower`, it can add a `site` named `Tower`; then click `Equip Tree => Tower => + => Add Floor`, enter `Name`, here I enter `Floor1`, it can add a `Floor` named `Floor1`; click `Equip Tree again => Tower => Floor1 => + => Add Equip`, enter `Name`, here I enter `ModbusEquip` to add a new `Equip`.
0 commit comments