0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

搭建Node-RED环境,将开发板变身为工业控制网关——米尔基于NXP LS1028A开发板

米尔电子 2022-12-05 09:47 次阅读

由测评者HonestQiao提供

视频抢先看↓↓↓

ec9ff0e0-72a9-11ed-b116-dac502259ad0.gif

这篇分享,内容较长,涉及知识点多,需耐心阅读,目录如下:

前言

一、安装node-red

二、系统命令控制LED

三、LED权限设置

四、Node-RED控制系统LED

五、系统命令控制GPIO

六、Node-RED控制GPIO

七、开发板上的S3按键使用

八、在Node-RED中使用S3按键控制LED

九、Node-RED使用I2C接口读取SHT30温湿度传感器数据

十:Node-RED使用仪表盘显示温湿度传感器数据

十一:总结

前言:

如果有心查看米尔MYC-J1028X核心板及开发板的官方界面:

ecb2ad34-72a9-11ed-b116-dac502259ad0.png

你会发现,介绍中透露出浓厚的工业味儿。工业!工业!工业!

今天,我们就在MYC-J1028X开发板上,搭建Node-RED环境,将开发板变身为工业物联网控制网关。

很多人了解或者知道Node-RED,是从智能家居或者小型物联网控制开始的,有的人认为只是一个类似的图形界面编程的工具。

其实,在工业互联网中,Node-RED可以用于数据收集、关联性触发控制、仪表呈现等,在低成本投入的情况下,也能获得较好的效果。

一、安装node-red

安装node-red,可以参考官方的文档:https://nodered.org/docs/getting-started/raspberrypi

虽然这篇文档,是针对树莓派的,但是对于Debian系的系统,都是可以参考的。

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

执行上述命令后,将自动下载安装脚本,启动安装进程,安装过程中的问题,一律选y即可。

ecf249d0-72a9-11ed-b116-dac502259ad0.png

安装过程可能耗时比较长,先沏一杯茶或者咖啡,等着吧:

ed01d350-72a9-11ed-b116-dac502259ad0.png

首次安装,可能会遇到莫名其妙的Node-RED core没装上,核心都没装上,怎么玩?

不管,再次执行安装命令,就能好了:

ed1d0e7c-72a9-11ed-b116-dac502259ad0.png

如果提示那个shortcut有问题,先不管,不影响使用。

因为是首次安装,所以执行node-red admin init进行初始化:

ed469616-72a9-11ed-b116-dac502259ad0.png

初始化完成后,就可以执行 node-red start 启动Node-RED了。

ed5ceac4-72a9-11ed-b116-dac502259ad0.png

正常启动后,就可以通过网址 http://开发板IP:1880/ 进行访问了:

ed7308e0-72a9-11ed-b116-dac502259ad0.png

输入初始化的时候设置的账户密码,登录后,按照下面的设置,即可切换到中文界面:

ed849d26-72a9-11ed-b116-dac502259ad0.png

设置完成后,需要刷新页面,才能正式生效。

二、系统命令控制LED

现在,我们就可以开始在Node-RED中,开始进行外设控制了。

第一个控制逻辑,还是点灯,能点灯,我们就成功一大半了。

通过查看官方的手册,可以了解到:

ed9c333c-72a9-11ed-b116-dac502259ad0.png


这个LED,系统已经做好了设备关联,不能通过GPIO进行控制。

edc6d768-72a9-11ed-b116-dac502259ad0.png

我们可以先使用上面的指令,测试能否控制系统的D22-LED。

echo 0 | sudo tee /sys/class/leds/d22/brightness

echo 1 | sudo tee /sys/class/leds/d22/brightness

eddc62cc-72a9-11ed-b116-dac502259ad0.jpg

三、LED权限设置:

通过查看Node-RED的文档资料,可以了解到,有一个Exec Node,可以用于执行系统的命令,那我们正好可以使用其来执行上面手册中,控制D22的指令。

要使得普通用户运行的Node-RED能够控制系统LED,需要在udev中,添加对应的权限处理规则,否则操作时将会提示没有权限。

sudo groupadd -f -r leds

sudo usermod -a -G leds $USER

sudo vim /etc/udev/rules.d/99-leds.rules

SUBSYSTEM=="leds", ACTION=="add", RUN+="/bin/chgrp -R leds /sys%p", RUN+="/bin/chmod -R g=u /sys%p"

SUBSYSTEM=="leds", ACTION=="change", ENV{TRIGGER}!="none", RUN+="/bin/chgrp -R leds /sys%p", RUN+="/bin/chmod -R g=u /sys%p"

将上面的最后两行设置,添加到/etc/udev/rules.d/99-leds.rules 后,需要重启系统才能生效。

友情提醒:类似在udev中进行普通用户权限的设置,后续还有很多次,一定要仔细设置。


重启后(sudo reboot),可以测试使用普通用户权限,来操作LED:

echo 0 | tee /sys/class/leds/d22/brightness

echo 1 | tee /sys/class/leds/d22/brightness

四、Node-RED控制系统LED

先在Node-RED界面中,参考下图,添加两个inject node,再添加两个Exec Node。

edf00426-72a9-11ed-b116-dac502259ad0.png

Exec Node的命令部分,参考下图填写,记住一个为echo 0,一个为echo 1,对应熄灭和点亮LED

ee18c2bc-72a9-11ed-b116-dac502259ad0.png

两个injection Node的设置,分别如下:

ee2f67d8-72a9-11ed-b116-dac502259ad0.png

ee4a2b04-72a9-11ed-b116-dac502259ad0.png

上面的逻辑表示:

injection 0于第0秒开始执行,触发echo 0对应的Exec,熄灭LED

injection 1于第1秒开始执行,触发echo 1对应的Exec,点亮LED

第2秒,injection 0再次执行,熄灭LED

第1+2秒,injection 1再次执行,点亮LED

因为设置了周期执行,所以上面两个触发器,交替执行,就实现了LED的亮灭效果。

五、系统命令控制GPIO:

在官方手册上,有说明如何操作GPIO:

ee66b7f6-72a9-11ed-b116-dac502259ad0.png

结合开发板和原理图上我们可以了解到,J18是我们可以方便使用的引脚区域:

eec8ed18-72a9-11ed-b116-dac502259ad0.png

ef01db5a-72a9-11ed-b116-dac502259ad0.jpg

J18上可供使用的GPIO对应关系如下:

J18 - Pin 32 - GPIO3_5:421

J18 - Pin 22 - GPIO3_6:422

J18 - Pin 29 - GPIO3_8:424

J18 - Pin 31 - GPIO3_9:425

J18 - Pin 33 - GPIO3_10:426

J18 - Pin 36 - GPIO3_12:428

类似系统LED,如果要在普通用户下控制GPIO,也需要在udev中进行一些设置,具体设置如下:

sudo groupadd -f -r gpio

sudo usermod -a -G gpio $USER

sudo vim /etc/udev/rules.d/99-gpio.rules

SUBSYSTEM=="gpio", KERNEL=="gpiochip*", ACTION=="add", RUN+="/bin/chgrp -R gpio /sys/class/gpio/export /sys/class/gpio/unexport", RUN+="/bin/chmod -R g=u /sys/class/gpio/export /sys/class/gpio/unexport"

SUBSYSTEM=="gpio*", KERNEL=="gpio*", ACTION=="add", RUN+="/bin/chgrp -R gpio /sys%p", RUN+="/bin/chmod -R g=u /sys%p"

SUBSYSTEM=="gpio*", KERNEL=="gpio*", ACTION=="change", ENV{TRIGGER}!="none", RUN+="/bin/chgrp -R gpio /sys%p", RUN+="/bin/chmod -R g=u /sys%p"

将上述最后三行内容写入/etc/udev/rules.d/99-gpio.rules,然后重启开发板即可生效。

重启完成后,我们就可以现在命令行下进行测试。

首先按照原理图,将可以用3.3V驱动的LED,连接到GPIO3_9引脚上。

然后使用下面的命令进行测试:

echo 425 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio425/direction

for i in {1..100};do

echo $((i%2)) > /sys/class/gpio/gpio425/value

sleep 1

done

执行完命令后,连接到GPIO3_9引脚上的LED,将每秒闪烁一次。

ef204126-72a9-11ed-b116-dac502259ad0.jpg


测试控制成功后,我们就可以到Node-RED中进行控制了。

六、Node-RED控制GPIO

要在Node-Red中控制GPIO,可以安装OPI-GPIO插件,按照以下步骤安装即可:

ef3e0bb6-72a9-11ed-b116-dac502259ad0.png

安装完成后,在右边组件选择栏,就会出现Orange Pi,选择其中的output pin,然后将之前设置的injection 0和1连接到新添加的控件上,再按照下面的步骤,设置对应的GPIO端口号。

ef545c5e-72a9-11ed-b116-dac502259ad0.png

因为GPIO3_9对应425,所以pin填写425即可。但Orange Pi在填写后,再次打开的时候,界面会变成初始状态,所以务必仔细填写。

填写完成,点击右上角的部署,连接到GPIO3_9上的LED,就会开始闪烁了,和板子上的D22-LED同步。

七、开发板上的S3按键使用:

在开发板上,有一个可供用户编程使用的按键S3:

ef6dd6f2-72a9-11ed-b116-dac502259ad0.png

具体位置如下:

ef932c36-72a9-11ed-b116-dac502259ad0.jpg

S3按键,使用系统/dev/input/event0来监听接收,普通用户使用,需要做如下设置:

sudo usermod -a -G input $USER

sudo vim /etc/udev/rules.d/99-event.rules

KERNEL=="event[0-9]*", SUBSYSTEM=="input", TAG+="uaccess"

设置好以后,重启才能生效。

重启后,使用evtest指令测试:

efc07c68-72a9-11ed-b116-dac502259ad0.png

S3按键后,就能够收到按键的消息了。

为了能够更好的接收到按键信息,我们需要使用Python去进行检测,这需要使用到python3-evdev库,先安装:

pip3 install evdev

然后,使用下面的python脚本进行测试:

from evdev import InputDevice

from select import select

dev = InputDevice('/dev/input/event0')

while True:

r,w,x=select([dev],[],[])

for event in dev.read():

print(event)

按下S3按键然后释放,就会收到信息了:

efe43b08-72a9-11ed-b116-dac502259ad0.png

需要注意的是,S3按键使用系统Event接收,按下去和释放,都会触发一次。

按下去对应:

event at 1664670749.634839, code 02, type 01, val 01

event at 1664670749.634839, code 00, type 00, val 00

释放对应:

event at 1664670750.350823, code 02, type 01, val 00

event at 1664670750.350823, code 00, type 00, val 00

我们可以将程序完善一下,直接按键输出1,释放输出0:

from evdev import InputDevice

from select import select

dev = InputDevice('/dev/input/event0')

while True:

r,w,x=select([dev],[],[])

for event in dev.read():

if event.code == 2 and event.type == 1:

print("value: %d" % event.value)

按下S3按键然后释放,就会收到下面的信息了:

f000b878-72a9-11ed-b116-dac502259ad0.png

这样,我们就准备好将按键值提供给Node-RED使用了。

八、在Node-RED中使用S3按键控制LED:

要在Node-RED中,获取到Python提供的按键值,然后控制LED,需要使用下面的逻辑:

f01ca4f2-72a9-11ed-b116-dac502259ad0.png


在Node-RED中的控制逻辑如下:

f0451388-72a9-11ed-b116-dac502259ad0.png

下面进行详细的说明。

首先,我们再次调整上面的监控脚本,使得监控按键的逻辑,符合实际需要,即:

根据按键次数,奇数次按键输出1(用于点亮LED),偶数次按键输出0(用于熄灭LED)

默认输出0

注意:这里是根据按键奇偶次数来输出1或者0,而不是根据按下和释放来输出1或者0

具体代码如下:

from evdev import InputDevice

from select import select

dev = InputDevice('/dev/input/event0')

keypress_times = 0

print(keypress_times % 2)

while True:

r,w,x=select([dev],[],[])

for event in dev.read():

if event.value == 1:

keypress_times = keypress_times + 1

print(keypress_times % 2)

将上述代码保存到/home/HonestQiao/Projects/event/evdev_key.py (具体路径,请根据你的实际情况设定),然后运行测试:

f068d5a2-72a9-11ed-b116-dac502259ad0.png

测试无误后,就可以在Node-RED中真正调用了。

要在Node-RED中,启动运行上面的监听脚本,需要使用到node-red-node-daemon插件,安装即可:

f08cb6b6-72a9-11ed-b116-dac502259ad0.png

然后,按照下面的方式,使用daemon控件并进行设置:

f0ac6696-72a9-11ed-b116-dac502259ad0.png

因为evdev_key.py输出的内容,为【0或者1 并附带回车】,所以Node-RED收到后,需要进行一次转换,才能使用。

按照下面的步骤,添加转换控件,并设置好转换逻辑即可:

f0d8148a-72a9-11ed-b116-dac502259ad0.png

然后,添加GPIO3_10对应426引脚控制,并与转换为数字控件进行关联:

f0f1ac2e-72a9-11ed-b116-dac502259ad0.png

忘记说了,我在J18的GPIO3_10对应的引脚,连接了第二个LED:

f11dd5ba-72a9-11ed-b116-dac502259ad0.png

然后,再添加一个debug控件,以便能够查看到中间过程的数据信息:

f1704a5c-72a9-11ed-b116-dac502259ad0.png


将S3的三个输出、转换数字控件的输出,都连接到debug控件。

点击部署后,在右边,就能看到调试输出信息了。

尝试一下按键,就能够看到脚本输出的字符串信息,已经转换为数字信息,并且GPIO3_10连接的黄色LED,也能够被正常控制了。


九、Node-RED使用I2C接口读取SHT30温湿度传感器数据:

前面的部分,都是LED控制、GPIO控制、按键读取,相对比较简单。

下面,再来一个感觉稍微提高一点点的实例,就是使用I2C接口读取SHT30温湿度传感器。

在之前看过的电路原理图中,J18接口上,就有I2C接口。

将I2C接口的SHT30,连接到J18对应的接口上:

f18e5ccc-72a9-11ed-b116-dac502259ad0.jpg

要在普通用户权限下,使用i2c接口,我们又需要在udev中做一些设置:

sudo vim /etc/udev/rules.d/99-i2c.rules

KERNEL=="i2c-[0-9]*", GROUP="i2c"

将这行内容,写入到/etc/udev/rules.d/99-i2c.rules,然后重启生效。

重启完成后,在命令下下,测试是否能够找到SHT30:

先使用 i2cdetect -l 命令查看一下可供使用的i2c接口:

f1ad1d42-72a9-11ed-b116-dac502259ad0.png

从上面可以看到,i2c-0、i2c-1可供使用。

然后,再使用 i2cdetect -y 0 和 i2cdetect -y 1 查看i2c挂载的设备: f1d134e8-72a9-11ed-b116-dac502259ad0.png

在i2c-1中,有一个44的设备,这个正是 SHT30的默认i2c通讯地址。

可以尝试,把SHT30连线断开,再使用 i2cdetect -y 1 查看,有什么不同。

在Node-RED中,要读取SHT3X的数据,可以使用 node-red-contrib-sht 插件:

f1eb3dca-72a9-11ed-b116-dac502259ad0.png

然后,按照如下步骤,先添加一个injection控件,用于周期性触发,再挂一个SHT3X控件,用于读取SHT3X的数据,最后再挂一个debug模块,输出调试信息:

f20899c4-72a9-11ed-b116-dac502259ad0.png

逻辑设置完成,点击右上角的部署后,调试区域,就会打印出来,实际读取到的温湿度信息了。

对着温湿度传感器哈哈气,就会发现读取到的数值,发生了变化。

十:Node-RED使用仪表盘显示温湿度传感器数据:

Node-RED还有一个迷人又强大的地方,那就是它不仅能够方便你用图形界面设计物联网设备的控制交互流程,还能够很方便的使用仪表盘,提供数据查看界面。

下面,我就在上一步读取到温湿度传感器的基础上,再做一个,可以在手机界面上查看访问的仪表盘。

首先,安装一个dashboard仪表盘控件:

f21c80a6-72a9-11ed-b116-dac502259ad0.png

有好多可供选择的,我直接安装了第一个dashboard-evi。其他的,大家也可以尝试一下。

然后,在SHT3X空间上,挂两个change,用于转换温湿度值:

f236b7f0-72a9-11ed-b116-dac502259ad0.png

f24c588a-72a9-11ed-b116-dac502259ad0.png

f26550c4-72a9-11ed-b116-dac502259ad0.png

上述两个change,一个用于将温度值转换为只有1位小数,一个将湿度值转换为无小数。

而温湿度值,各挂一个gauge,用于显示最终的数据,其内容,参考如下设置即可:

温度gauge:

f29624ce-72a9-11ed-b116-dac502259ad0.png

湿度gauge:

f2ae975c-72a9-11ed-b116-dac502259ad0.png

注意,务必需要设置Range,也就是数值范围,否则可能不会正常显示。

在第一次设置gauge的时候,如上面的温度gauge,要点 (4) 进入,设置group节点和Tab节点,具体如下:

f2d63154-72a9-11ed-b116-dac502259ad0.png

f2ec590c-72a9-11ed-b116-dac502259ad0.png

经过以上设置,就能够将温湿度值,输出到仪表盘上了。

为了效果更好,我再添加一个当前日期时间转换,并使用文本控件显示。

先按照下面的步骤,添加一个function控件,别编写转换代码:

f31c2e16-72a9-11ed-b116-dac502259ad0.png

function formatDate(value) {

var date = new Date(value);

var y = date.getFullYear(),

m = date.getMonth() + 1,

d = date.getDate(),

h = date.getHours(),

i = date.getMinutes(),

s = date.getSeconds();

if (m < 10) { m = '0' + m; }

if (d < 10) { d = '0' + d; }

if (h < 10) { h = '0' + h; }

if (i < 10) { i = '0' + i; }

if (s < 10) { s = '0' + s; }

var t = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s;

return t;

}

return { payload: formatDate(msg.payload) };

其中的 formatDate() 函数,就是一个js中标准的把当前时间戳转换为YYYY-mm-dd HHSS格式的函数。

这也是Node-RED的一个强大之处,除了编写好的控件,还可以使用脚本进行中间过程的处理。

设置好了日期时间转换,再在其后挂一个text控件,用作显示即可:

f34ae9d6-72a9-11ed-b116-dac502259ad0.png

全部设计完成后,点击右上角的部署,就可以使用手机进行查看了。

在手机上,访问网址 http://开发板IP:1880/ui ,就能看到如下的界面了:

f3894d20-72a9-11ed-b116-dac502259ad0.jpg

十一、总结:

这篇分享,基于米尔MYC-J1028X开发板,结合Node-RED,将其变身为工业控制网关。

看到这里,看似分享了不少内容,但涉及到Node-RED的部分,只有Node-RED全部功能的万分之一都不到,而且都是非常基础的使用。

对于米尔MYC-J1028X开发板的使用,也是用到了实际功能的百分之一都不到。

Node-RED还有很多很多很多强大的功能,可以方便我们快速的获取外部设备的数据,并编写合适的逻辑处理流程来规整数据,并进行数据的呈现,或者对外部设备进行控制。

而这一切,并不需要特别专业的编程技能,就能够完成。

基于米尔MYC-J1028X开发板强劲的运算能力,以及丰富的外设接口,结合Node-RED所构建的工业控制网关,完全可以应用在实际场合中,发挥重大的作用。

将其部署在工业现场,用于收集、存储、处理和分析网络边缘的数据,能够减轻对云和数据中心的压力。

这套系统,可以通过灵活的I/O简化通信和控制,对数据进行主动采集、解析及过滤、汇聚,来可视化现场数据和控制逻辑,既能方便预测性维护,又能开展实时数据处理与决策。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 网关
    +关注

    关注

    9

    文章

    4447

    浏览量

    51058
  • 开发板
    +关注

    关注

    25

    文章

    5033

    浏览量

    97380
收藏 人收藏

    评论

    相关推荐

    人脸疲劳检测应用-米尔基于RK3576核心/开发板

    本文介绍基于米尔电子MYD-LR3576开发板米尔基于瑞芯微RK3576开发板)的人脸疲劳检测方案测试。
    的头像 发表于 12-20 08:06 149次阅读
    人脸疲劳检测应用-<b class='flag-5'>米尔</b>基于RK3576核心<b class='flag-5'>板</b>/<b class='flag-5'>开发板</b>

    如何用OpenCV进行手势识别--基于米尔全志T527开发板

    本文介绍基于米尔电子MYD-LT527开发板米尔基于全志T527开发板)的OpenCV手势识别方案测试。摘自优秀创作者-小火苗
    的头像 发表于 12-13 08:04 631次阅读
    如何用OpenCV进行手势识别--基于<b class='flag-5'>米尔</b>全志T527<b class='flag-5'>开发板</b>

    基于OPENCV的相机捕捉视频进行人脸检测--米尔NXP i.MX93开发板

    本文介绍基于米尔电子MYD-LMX93开发板米尔基于NXPi.MX93开发板)的基于OpenCV的人脸检测方案测试。OpenCV提供了一
    的头像 发表于 11-07 09:03 1085次阅读
    基于OPENCV的相机捕捉视频进行人脸检测--<b class='flag-5'>米尔</b><b class='flag-5'>NXP</b> i.MX93<b class='flag-5'>开发板</b>

    NXP FRDM-MCXC444开发板在RT-Thread环境下的上手过程

    NXP FRDM-MCXC444开发板是一款基于MCX C444 MCU的高性能开发板,它集成了丰富的硬件资源和接口,支持快速原型设计。本文将为读者提供一份详细的RT-Thread上手指南,帮助大家轻松玩转这款
    的头像 发表于 10-12 11:51 400次阅读
    <b class='flag-5'>NXP</b> FRDM-MCXC444<b class='flag-5'>开发板</b>在RT-Thread<b class='flag-5'>环境</b>下的上手过程

    198元,米尔NXP i.MX 93开发板,限购300套

    。即日,米尔联合NXP推出活动:米尔NXPi.MX93开发板限量300套,仅售198元!此次活动针对企业客户参与,需要您提供公司信息和联系方式,请按如下流程操作:
    的头像 发表于 09-27 08:00 358次阅读
    198元,<b class='flag-5'>米尔</b><b class='flag-5'>NXP</b> i.MX 93<b class='flag-5'>开发板</b>,限购300套

    ARMxy ARM 物联网边缘计算网关支持 Node-RED 用于工业控制

    在恶劣环境下稳定运行。丰富的通信接口(如网口、USB、RS485 等)及 WiFi/4G 支持,使网关能够灵活适应不同网络环境Node-RED 是一个基于
    的头像 发表于 08-19 17:01 363次阅读
    ARMxy ARM 物联网边缘计算<b class='flag-5'>网关</b>支持 <b class='flag-5'>Node-RED</b> 用于<b class='flag-5'>工业</b><b class='flag-5'>控制</b>

    米尔基于NXP iMX.93开发板的M33处理器应用开发笔记

    资源MYD-LMX9X开发板米尔基于NXPiMX.93开发板)3.软件资源Windows7及以上版本软件:IAREmbeddedWorkbench4.板载固件调试
    的头像 发表于 06-29 08:01 1347次阅读
    <b class='flag-5'>米尔</b>基于<b class='flag-5'>NXP</b> iMX.93<b class='flag-5'>开发板</b>的M33处理器应用<b class='flag-5'>开发</b>笔记

    Node-RED初学者教程-三分钟学习

    通过这短短三分钟的教程,你已经掌握了Node-RED的基本操作。你可以利用Node-RED的强大功能来创建更复杂的数据流和自动化任务,无论是物联网应用、API集成还是数据处理。Node-RED简化了编程过程,让
    的头像 发表于 06-27 17:09 2748次阅读
    <b class='flag-5'>Node-RED</b>初学者教程-三分钟学习

    Node-RED如何制作漂亮的界面

    Node-RED深度融合(如成都的纵横智控和苏州稳联科技Node-RED与物联网网关深度融合,打造可视化、硬件加持的物联网开发平台,使用
    的头像 发表于 06-26 16:50 4573次阅读
    <b class='flag-5'>Node-RED</b>如何制作漂亮的界面

    Node-RED安装本地教程

    Node-RED是一个基于流的开发工具,广泛应用于物联网(IoT)、家庭自动化和其他数据驱动的应用程序。它通过图形化的编程界面,使得非专业程序员也能轻松上手。本文介绍如何在本地环境
    的头像 发表于 06-24 12:10 2064次阅读
    <b class='flag-5'>Node-RED</b>安装本地教程

    点击参与米尔NXP i.MX 93开发板有奖试用

    米尔NXP合作发布的新品基于NXPi.MX93应用处理器的MYD-LMX9X开发板免费试用活动来啦~~米尔提供了3块价值678元的MYD-LMX9X
    的头像 发表于 06-13 08:02 527次阅读
    点击参与<b class='flag-5'>米尔</b><b class='flag-5'>NXP</b> i.MX 93<b class='flag-5'>开发板</b>有奖试用

    Node-RED实现电表数据采集并上云

    容器实现边缘采集”。前文指引:《【教程】图文详解!Docker容器实现边缘采集》首先需要搭建Node-RED运行环境,可以参考以往案例,也可以直接百度搜索,接下来
    的头像 发表于 06-07 08:21 2822次阅读
    <b class='flag-5'>Node-RED</b>实现电表数据采集并上云

    米尔NXP i.MX 93开发板的Qt开发指南

    1.概述Qt是一个跨平台的图形应用开发框架,被应用在不同尺寸设备和平台上,同时提供不同版权版本供用户选择。米尔NXPi.MX93开发板(MYD-LMX9X开发板)使用Qt6.5版本进行
    的头像 发表于 06-07 08:01 1730次阅读
    <b class='flag-5'>米尔</b><b class='flag-5'>NXP</b> i.MX 93<b class='flag-5'>开发板</b>的Qt<b class='flag-5'>开发</b>指南

    免费!NXP i.MX 93开发板有奖试用

    米尔NXP合作发布的新品基于NXPi.MX93应用处理器的MYD-LMX9X开发板免费试用活动来啦~~米尔提供了2块价值678
    的头像 发表于 05-23 08:01 722次阅读
    免费!<b class='flag-5'>NXP</b> i.MX 93<b class='flag-5'>开发板</b>有奖试用

    fpga开发板与linux开发板区别

    FPGA开发板与Linux开发板是两种不同的硬件开发平台,各自具有不同的特点和应用场景。在以下的文章中,我详细介绍FPGA开发板和Linu
    的头像 发表于 02-01 17:09 2232次阅读