Hướng dẫn sử dụng if else trong Node-RED / iNut Node-RED IDE

Mô tả dự án: 

Bài viết sẽ hướng dẫn bạn sử dụng hàm rẻ nhánh if else trong nền tảng node-red / iNut Node-RED IDE.

Bạn cần chuẩn bị gì?

Bạn cần phải cài đặt Node-red hoặc iNut Node-RED IDE. Nếu bạn chưa cài, xin vui lòng đọc bài viết Tài liệu kỹ thuật bỏ túi để lập trình Internet of Things - Vận hành, điều khiển và quản lý thiết bị qua Internet trong 1 nốt nhạc để cài đặt iNut Node-RED IDE nhé.

Khối lệnh switch

Để lập trình xử lý câu lệnh rẻ nhánh, bạn phải sử dụng khối lệnh switch ở nhóm lệnh function.

Đầu vào của khối lệnh switch sẽ nhận là đầu ra từ một khối lệnh bất kỳ. Ví dụ:

Chương trình, nếu tôi nhấn vào phím 1 => Phải ra phân luồn output ở ô thứ 1 (từ trên xuống dưới). Tương tự khi tôi nhấn ô số 2, số 3.

Nội dung định nghĩa của switch:

 

Bạn có thể thay đổi được toán tử so sánh, kiểu dữ liệu so sánh và giá trị. Tương ứng sẽ cho ta biết được vị trí đầu ra. Bạn có thể thêm điều kiện qua ô "+add".

Code mẫu

[
    {
        "id": "fedecce.de5cd3",
        "type": "inject",
        "z": "ffe1c804.8ae908",
        "name": "",
        "topic": "",
        "payload": "0",
        "payloadType": "num",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 1050,
        "y": 1420,
        "wires": [
            [
                "df3a346f.a7cf18"
            ]
        ]
    },
    {
        "id": "df3a346f.a7cf18",
        "type": "switch",
        "z": "ffe1c804.8ae908",
        "name": "",
        "property": "payload",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "0",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "1",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "2",
                "vt": "num"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 3,
        "x": 1190,
        "y": 1480,
        "wires": [
            [
                "7c50d8b0.ef22f8"
            ],
            [
                "6a872372.c205ac"
            ],
            [
                "1232e53a.b7f21b"
            ]
        ]
    },
    {
        "id": "7c50d8b0.ef22f8",
        "type": "debug",
        "z": "ffe1c804.8ae908",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "x": 1350,
        "y": 1420,
        "wires": []
    },
    {
        "id": "6a872372.c205ac",
        "type": "debug",
        "z": "ffe1c804.8ae908",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "x": 1350,
        "y": 1480,
        "wires": []
    },
    {
        "id": "1232e53a.b7f21b",
        "type": "debug",
        "z": "ffe1c804.8ae908",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "x": 1350,
        "y": 1540,
        "wires": []
    },
    {
        "id": "2a51e03.d620e2",
        "type": "inject",
        "z": "ffe1c804.8ae908",
        "name": "",
        "topic": "",
        "payload": "1",
        "payloadType": "num",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 1050,
        "y": 1480,
        "wires": [
            [
                "df3a346f.a7cf18"
            ]
        ]
    },
    {
        "id": "42fda574.5950bc",
        "type": "inject",
        "z": "ffe1c804.8ae908",
        "name": "",
        "topic": "",
        "payload": "2",
        "payloadType": "num",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 1050,
        "y": 1540,
        "wires": [
            [
                "df3a346f.a7cf18"
            ]
        ]
    }
]

 

lên
7 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

ST7565 và ESP8266 - Màn hình LCD bự chà bá chưa đến 100k cho thế giới IoT

Mình rất thích LCD ST7565 này, và đã đặt liền 4 con mà mỗi con quá rẻ có 20k. Nhưng khổ một điều, điện áp hoạt động và IO của LCD ST7565 có 3.3V. Bản thân mình lại không thích việc chơi điện trở để chơi LCD này với Arduino. Lý do đơn giản là phải hàn quá nhiều, mình lại lười crying. Hổm nay, mình đang làm loạt bài về ESP8266 và cũng phải gặp vấn đề điện trở để làm cầu phân áp khi giao tiếp giữa ESP8266 và Arduino.

lên
17 thành viên đã đánh giá bài viết này hữu ích.

Thư viện ST7565 trên Arduino Create - Thử nghiệm đầu tiên: Hoàn hảo!

Mình rất tự hào và hãnh diện, khi thư viện made in Việt Nam đầu tiên của Thái Sơn (Nick Chung) được mình tải lên tại Arduino Create với mục đích thử nghiệm việc biên dịch code online trên Arduino Create đã hoàn thành công việc của nó ngay trong lần thử đầu tiên. Qua bài viết này, mình xin hướng dẫn các bạn lập trình Arduino với Arduino Create thông qua việc làm một ví dụ mẫu về việc cài thư viện và sử dụng nó trên Arduino Create.

lên
7 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Ra mắt thư viện iNut cho Arduino, điều khiển từ xa qua Internet bằng mạch iNut cảm biến

Bạn muốn làm thiết bị điện điều khiển từ xa, quản lý hệ thống cảm biến nhà vườn, nhà kính của mình qua Internet? Hay bạn muốn làm các startup liên quan đến nông nghiệp thông minh, nhà máy thông minh hay thành phố thông minh mà không biết bắt đầu từ đâu? Và đây, iNut Platform chính là giải pháp dành cho bạn. Qua bài viết này này, thư viện iNut cho Arduino sẽ giúp bạn thực hiện hóa vấn đề này, cùng khám phá nhé.

Nếu bạn đã từng làm qua sóng bluetooth với thư viện SerialCommand thì bạn sẽ thấy cực kỳ quen thuộc khi sử dụng thư viện iNut này!

lên
10 thành viên đã đánh giá bài viết này hữu ích.

Bài 9: Nhấn giữ button để hoán vị trạng thái của LED - Debounce

Chúng ta sẽ tìm cách để xây dựng những sự kiện (event) cho những button của mình. Từ đó xây dựng những hệ thống button-kép của riêng mình!

lên
19 thành viên đã đánh giá bài viết này hữu ích.