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

Vỏ hộp cho ARDUINO UNO

Tự làm 1 chiếc vỏ hộp bảo vệ cho ARDUINO UNO của bạn chưa bao giờ đơn giản như thế này. Chỉ việc đem file dxf của mình ra ngoài tiệm cắt laser (quảng cáo và cắt thôi)!

Mình mới học ARDUINO cũng được khoảng 1 tuần thôi, đọc bài viết trên page cũng nhiều nhưng chả đóng góp được gì. Hôm nay rãnh rỗi ngồi làm cái hộp cho con UNO vì mấy hôm trước mình toàn lót giấy phía dưới rồi đặt em nó lên thấy cũng bất tiện, nếu các bạn có hứng thú thì làm theo file cad mình để ở cuối bài nha.

lên
15 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ả

Dùng ATTiny13 để shiftOut ra IC 595 điều khiển nhiều LED

Qua bài viết Bài 2: Attiny13 - Trợ thủ đắc lực của Arduino - Lập trình nó?, chúng ta đã biết được cách lập trình một bé ATTiny13 để làm nhấp nháy một chú đèn LED. Hôm nay, chúng ta sẽ nâng cao một tí nữa, chúng ta sẽ lập trình chú ATTiny13 này để shiftOut ra 8 LED và hơn thế nữa!

Nếu bạn chưa biết về shiftOut, bạn có thể xem bài viết này và thực hiện nó trước!

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

for

Hàm for có chức năng làm một vòng lặp. Vậy vòng lặp là gì? Hãy hiểu một cách đơn giản, nó làm đi làm lại một công việc có một tính chất chung nào đó. Chẳng hạn, bạn bật tắt một con LED thì dùng digitalWrite xuất HIGH delay rồi lại LOW rồi lại delay. Nhưng nếu bạn muốn làm nhiều hơn 1 con LED thì mọi đoạn code của bạn sẽ dài ra (không đẹp và khi chỉnh sửa thì chẳng lẻ ngồi sửa lại từng dòng?

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