tag 标签: 开发板

相关博文
  • 2025-4-25 13:55
    0 个评论
    Qt是基于C++ 的跨平台开源应用程序开发框架,专注于图形用户界面和非GUI程序的构建。它提供丰富的GUI控件库和高级功能模块(如网络通信、数据库访问、多媒体处理),并采用独特的信号与槽机制实现高效组件通信。支持OpenGL、Vulkan等图形接口,以及针对嵌入式系统的EGLFS无窗口模式和LinuxFB帧缓冲等,开发者可根据目标平台选择灵活的渲染策略。 本文基于触觉智能RK3506星闪开发板Ubuntu系统进行演示,配套RK3506核心板(3核A7@1.5GHz+M0@200MHz多核异构) 宽温级59元/ 工 业级68元 ,一片也是含税批量价。 Ubuntu SDK安装与环境搭建 SDK安装 网盘下载路径:Linux4.软件资料QT-SDK/Ubuntu 资料链接请进入触觉智能官网,或联系客服13423856106获取。 注意: 1. QT-SDK 采用交叉编译,所以要在 X86_64 电脑上使用 SDK,不要将 SDK 下载到板子上。 2. 编译环境请使用 Ubuntu22.04(真机或 docker 容器),如果使用其他版本可能导致编译出错。 3. 不要在虚拟机共享文件夹以及非英文目录存放、解压QT-SDK。 下载SDK后,首先校验MD5值,命令如下: $ md5sum rk3506-ubuntu22_qt5-sdk.tar.gz 解压QT-SDK,命令如下: $ sudo tar -zxvf rk3506-ubuntu22_qt5-sdk.tar.gz -C ./ 交叉编译环境搭建 进入qt sdk目录下,执行install_sdk.sh脚本,进行安装和搭建交叉编译环境,具体如下: $ cd ./rk3506-ubuntu22_qt5-sdk $ sudo ./install_sdk.sh $ ./env.sh $ source ~/.bashrc 搭建环境后,查看qmake版本和交叉编译工具链版本: $ arm-none-linux-gnueabihf-gcc -v Using built-in specs. COLLECT_GCC =arm-none-linux-gnueabihf-gcc COLLECT_LTO_WRAPPER =/ home /industio/ evb3506 /arm-gnu-toolchain-11.3.rel1-x86_64-arm-none-linux-gnueabihf/ bin /../ libexec /gcc/ arm - none - linux - gnueabihf /11.3.1/ lto - wrapper Target: arm-none-linux-gnueabihf Configured with: /data/jenkins/workspace/GNU-toolchain/arm-11/src/gcc/configure --target=arm-none-linux-gnueabihf --prefix= --with-sysroot=/arm-none-linux-gnueabihf/libc --with-build-sysroot=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/install//arm-none-linux-gnueabihf/libc --with-bugurl=https://bugs.linaro.org/ --enable-gnu-indirect-function --enable-shared --disable-libssp --disable-libmudflap --enable-checking=release --enable-languages=c,c++,fortran --with-gmp=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-mpfr=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-mpc=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-isl=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-arch=armv7-a --with-fpu=neon --with-float=hard --with-mode=thumb --with-arch=armv7-a --with-pkgversion= 'Arm GNU Toolchain 11.3.Rel1' Thread mod el: posix Supported LTO compression algorithms: zlib gcc version 11 . 3 . 1 20220712 (Arm GNU Toolchain 11 . 3 .Rel1) $ qmake -v QMake version 3 . 1 Using Qt version 5.15.8 in /opt/rk3506/rk3506_ubuntu22_5.15/ext/lib 注意:根据安装路径的不同,导致qmake和arm-none-linux-gnueabihf-gcc的路径也是不同的。 Qt交叉编译 Qt源码demo 将Qt demo 解压到当前路径下,命令如下: $ mkdir -p ./qt-demo tar -xvf moveblocks.tar.gz -C ./qt-demo $ cd qt-demo $ ls main .cpp moveblocks .pro 交叉编译 命令如下: $ qmake ./ $ make $ make install $ ls main .cpp Makefile moveblocks moveblocks .pro 由此可见编译后生成moveblocks可执行程序,可以通过ssh等方式将可执行程序传到开发板中运行。 Qt验证 将demo传到开发板上,命令如下: $ adb push Z:\moveblocks /tmp 运行demo,命令如下: $ chmod a+x /tmp/moveblocks $ /tmp/moveblocks 结果展示:
  • 2025-4-25 12:21
    0 个评论
    本文介绍Linux开发板文件系统打包及镜像制作的方法,演示Linux文件系统打包及镜像制作,适用于想将配置好的系统环境打包成镜像批量烧录。 触觉智能RK3562开发板 演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。 工具获取 本文所介绍的方法需要使用到Linux环境下的一些工具。工具可联系触觉智能客服或留言获取。下载Ubuntu PC环境后,需要解包后使用,解包方法如下: $ tar -vxf ido- pack -tools.tar -C ./ 解包后的文件内容如下: 工具包脚本默认芯片信息是rk3562,如果使用其他芯片,则需要修改芯片信息,对应路径ido-pack-tools/mkupdate.sh。 文件系统打包及文件系统镜像制作 从开发板中打包出文件系统 先在开发板中插入U盘或TF卡,然后通过mount命令查看文件系统分区节点,如下所示: root@ido:/# mount /dev/mmcblk2p8 on / type ext4 (rw,relatime) devtmpfs on /dev type devtmpfs (rw,relatime,size=996844k,nr_inodes=249211,mode=755) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,size=1008396k,nr_inodes=252099) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on /run type tmpfs (rw,nosuid,nodev,size=201680k,nr_inodes=252099,mode=755) tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k,nr_inodes=252099) tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,size=1008396k,nr_inodes=252099,mode=755) cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate) cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd) pstore on /sys/fs/pstore type pstore (rw,relatime) cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct) cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset) cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices) cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer) debugfs on /sys/kernel/debug type debugfs (rw,relatime) tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime) configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime) fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime) adb on /dev/usb-ffs/adb type functionfs (rw,relatime) tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=201676k,nr_inodes=252099,mode=700) tmpfs on /run/user/1001 type tmpfs (rw,nosuid,nodev,relatime,size=201676k,nr_inodes=252099,mode=700,uid=1001,gid=1001) gvfsd-fuse on /run/user/1001/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1001,group_id=1001) /dev/mmcblk2p7 on /media/ido/oem type ext4 (rw,nosuid,nodev,relatime,uhelper=udisks2) /dev/mmcblk2p6 on /media/ido/userdata type ext4 (rw,nosuid,nodev,relatime,uhelper=udisks2) /dev/sda1 on /media/ido/U type vfat (rw,nosuid,nodev,relatime,uid=1001,gid=1001,fmask=0022,dmask=0022,codepage=936,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2) 由上面命令第2和29行可以看到 /dev/mmcblk2p8 on/type ext4 (rw,relatime),/dev/mmcblk2p8 挂载到根目录,/dev/mmcblk2p8就是我们需要的节点。U盘挂载目录为/media/ido/U。 # 挂载根文件目录 $ sudo mount /dev/mmcblk2p8 /mnt # 进入挂载文件夹 $ cd /mnt $ rm var/lib/misc/firstrun $ sudo tar -czf /media/ido/U/ido-rootfs.tar.gz ./* $ sync 注意:打包使用tar命令需要用sudo权限。 压缩包解压 将打包出的压缩包,解压至Ubuntu PC端环境,命令如下: $ mkdir -p your/target/path/ $ sudo tar -xzf ido-rootfs.tar.gz -C your/target/path/ 文件系统镜像制作 查看文件系统大小,如下所示: $ sudo du -sh your/target/path/ 制作镜像需要的脚本文件mk-rootfs-image.sh,文件位于工具包的pack-tools/roofs_mk/目录。根据系统大小修改 mk-rootfs-image.sh 脚本第25行的参数,默认镜像大小设置为4096MB。 dd if=/dev/zero of=${ROOTFSIMAGE} bs=1M count=0 seek=4096 注意:一般脚本中设置的镜像大小需要大于 du 返回值。 $ sudo cd pack-tools/roofs_mk/ $ sudo ./mk-rootfs-image.sh ../../your/target/path/ 脚本正常运行退出后,可在目录得到rootfs.img的文件系统镜像。 制作整包固件update.img 前面文章得到了rootfs.img散包固件,接下来我们制作update.img整包固件。 此处分两种情况: 1. 只修改文件系统,只需将原本烧录的update.img镜像解包后,替换新制作的rootfs.img。 2. 如果除了文件系统外还有其他修改,则可以修改sdk源码编译脚本,编译的时候使用自定义的文件系统。 只修改文件系统的情况 将需要解包的完整镜像文件拷贝到工具包 pack-tools 目录下,此处以完整镜像 IDO-EVB3562-V1B_MIPI-800x1280_Ubuntu20_QT5_240719.img为例。 执行解包脚本,将update镜像按照分区拆分出分区镜像。 $ ./unpack.sh IDO-EVB3562-V1B_MIPI-800x1280_Ubuntu20_QT5_240719.img 执行结果如下: 分区文件解包存放到./output/目录。 将文章第2节中打包好的文件系统镜像复制替换到./output/rootfs.img,文件名称必须为rootfs.img。 最后执行./mkupdate.sh脚本将分区镜像合并为一个完整的镜像update.img。 脚本运行成功后,将会产生新的整包文件./output/update.img。 除了文件系统外还有其他修改的情况 不同SDK修改的地方不一致,在sdk中新建自定义目录myrootfs,把rootfs.img放入其中(myrootfs和build.sh同级目录)。 mkdir myrootfs #将rootfs.img放入myrootfs中 ls myrootfs/rootfs.img 情况一:直接修改build.sh,使其编译时使用我们的rootfs.img打包。在build.sh的function build_rootfs()函数中,添加24-27行代码。 function build_rootfs (){ check_config RK_ROOTFS_IMG || return 0 RK_ROOTFS_DIR=.rootfs ROOTFS_IMG= ${RK_ROOTFS_IMG##*/} rm -rf $RK_ROOTFS_IMG $RK_ROOTFS_DIR mkdir -p ${RK_ROOTFS_IMG%/*} $RK_ROOTFS_DIR case " $1 " in yocto) build_yocto ln -rsf yocto/build/latest/rootfs.img \ $RK_ROOTFS_DIR /rootfs.ext4 ;; debian) build_debian ln -rsf debian/linaro-rootfs.img \ $RK_ROOTFS_DIR /rootfs.ext4 ;; distro) build_distro for f in $( ls distro/output/images/rootfs.*); do ln -rsf $f $RK_ROOTFS_DIR / done ;; myrootfs) ln -rsf myrootfs/rootfs.img \ $RK_ROOTFS_DIR /rootfs.ext4 ;; *) build_buildroot for f in $( ls buildroot/output/ $RK_CFG_BUILDROOT /images/rootfs.*); do ln -rsf $f $RK_ROOTFS_DIR / done ;; esac 在执行build.sh lunch后,执行以下命令: export RK_ROOTFS_SYSTEM=myrootfs 最后执行build.sh即可生成包含了rootfs.img的update.img整包固件。 ./build.sh rockdev/update.img即为我们所需的完整固件。 情况二:如果build.sh脚本中没有function build_rootfs()函数,则修改 ./device/rockchip/common/scripts/mk-rootfs.sh,添加以下8-12行与35行代码: ....省略部分代码........ build_ubuntu20 () { ln -rsf " $PWD /ubuntu/rootfs-ubuntu20.04-desktop.img" $ROOTFS_DIR /rootfs.ext4 finish_build build_ubuntu20 $@ } build_myrootfs () { ln -rsf " $PWD /myrootfs/rootfs.img" $ROOTFS_DIR /rootfs.ext4 finish_build build_myrootfs $@ } ....省略部分代码........ build_hook () { check_config RK_ROOTFS_TYPE || return 0 if ; then ROOTFS= ${RK_ROOTFS_SYSTEM:-buildroot} else ROOTFS= $1 fi ROOTFS_IMG=rootfs. ${RK_ROOTFS_TYPE} ROOTFS_DIR= " $RK_OUTDIR /rootfs" echo "==========================================" echo " Start building rootfs( $ROOTFS )" echo "==========================================" rm -rf " $ROOTFS_DIR " mkdir -p " $ROOTFS_DIR " case " $ROOTFS " in yocto) build_yocto " $ROOTFS_DIR " ;; debian) build_debian " $ROOTFS_DIR " ;; buildroot) build_buildroot " $ROOTFS_DIR " ;; ubuntu) build_ubuntu20 " $ROOTFS_DIR " ;; myrootfs)build_myrootfs " $ROOTFS_DIR " ;; *) usage ;; esac 修改 ./device/rockchip/common/configs/Config.in.rootfs,添加以下7、20、21行代码: config RK_ROOTFS_SYSTEM string default "buildroot" if RK_ROOTFS_SYSTEM_BUILDROOT default "debian" if RK_ROOTFS_SYSTEM_DEBIAN default "yocto" if RK_ROOTFS_SYSTEM_YOCTO default "ubuntu" if RK_ROOTFS_SYSTEM_UBUNTU default "myrootfs" if RK_ROOTFS_SYSTEM_MYROOTFS choice prompt "default rootfs system" help Default rootfs system. config RK_ROOTFS_SYSTEM_BUILDROOT bool "buildroot" depends on RK_BUILDROOT_BASE_CFG != "" config RK_ROOTFS_SYSTEM_DEBIAN bool "debian" depends on RK_DEBIAN_VERSION != "" config RK_ROOTFS_SYSTEM_UBUNTU bool "ubuntu" config RK_ROOTFS_SYSTEM_MYROOTFS bool "myrootfs" 在执行build.sh lunch命令后,执行以下命令: export RK_ROOTFS_SYSTEM=myrootfs 最后执行build.sh命令,即可生成包含了rootfs.img的update.img整包固件。 ./build.sh rockdev/update.img即为我们所需的完整固件。 产品简介 触觉智能RK3562开发板 (型号EVB3562),基于瑞芯微新一代SoC RK3562/RK3562J设计,可用于轻量级人工智能应用。EVB3562开发板配备了PCIe2.1/USB3.0 OTG/千兆网口等各类型接口,支持4G/5G通信、多摄像头及多种视频接口,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示、工业控制等行业领域。 搭载瑞芯微新一代RK3562/RK3562J芯片; 1TOPS算力NPU,支持INT8/INT16/FP16 等数据类型运算; 支持4K@30FPS与1080P@60FPS视频解码; 13M ISP,支持HDR与多路摄像头视频采集; 单路MIPI-DSI,最高2048x1080@60fps ; 单通道LVDS,最高1366x768@60fps ; 三路独立的以太网口,其中两路千兆网口, 一路百兆网口(2025新款开发板则为USB OTG+双网口); 支持5G/4G/WiFi/蓝牙无线通信; 支持Android,Linux操作系统;
  • 2025-4-18 15:02
    38 次阅读|
    0 个评论
    本文将介绍基于米尔电子MYD-LD25X开发板(米尔基于STM35MP257开发板)的环境监测系统方案测试。 摘自优秀创作者-lugl4313820 一、前言 环境监测是当前很多场景需要的项目,刚好我正在论坛参与的一个项目:Thingy:91X 蜂窝物联网原型开发平台的试用。把两个项目结合起来,实现一个简单的环境监测系统。 二、硬件平台 1、米尔-STM32MP257开发板 2、Thingy:91X 三、项目规划 1、米尔-STM32MP257开发板,板载了wifi模块,通过wifi连接到互联网。 2、启用MQTT,连接到私有的服务器,并订阅指定的主题。 3、使用QT设计UI界面。 4、接收数据并在UI界面中展示。 四、QT设计 1、QT安装 1.1. 下载在线安装包,现在好像只有一个在线安装包了。网址: Index of /qtproject/official_releases/online_installers/ 1.2. 下载好后,上传给虚拟机,执行安装。安装有几个地方要注意。 其他的按官方的教程就可以安装了。 2、Kit的配置 在官方给出的示例中,与这个版本的不一样,首先设置GCC只需要选择gcc就行了,然后g++自动在下面选择: 最后是QT version的选择要按下图选择。 这样就可以进行交叉编译了,然后如下: 3、创建桌面程序 在文章介绍的基础上,我创建了一个基于QT的桌面程序,其UI界面如下: 4、定义标签值 给相应的需要显示的label根据接收的数据,定义了相应的标签值: 5、引入QT的QtMqtt/QMqttClient 库 https: / /mbb.eet-china.com/forum /topic/ 150530_1_1 .html 【注】在官方发布的固件中,是没有QTMqtt的连接文件的,当运行带的QtMqtt的程序会报错: error while loading shared libraries: libQt5Mqtt.so. 5 : cannot open shared object file: No such file or directory 需要从SDK中复制到开发板目录中。 6、检测连接状态 同时为了实现检测与MQTT服务器的连接状态,需要引入一个线程,用于检测是否连接到服务器: void run () override { while ( true ) { if (m_client) { QString statusText = m_client- state () == QMqttClient::Connected ? "连接服务器:成功" : "连接服务器:失败" ; emit updateStatus (statusText) ; } msleep ( 1000 ); // 每秒检测一次 } } 7、在main中编写代码如下: MainWindow:: MainWindow (QWidget *parent) : QMainWindow (parent), ui (new Ui::MainWindow), m_client (new QMqttClient (this)) // 初始化MQTT客户端实例 { ui - setupUi (this); // 设置MQTT客户端参数 m_client - setHostname ( "hostname" ); m_client - setPort ( 1883 ); // 默认MQTT端口 m_client - setClientId ( "client_id" ); m_client - setUsername ( "usrename" ); m_client - setPassword ( "pwd" ); // 连接信号槽,处理连接成功事件 connect (m_client, QMqttClient::connected, this, () { // 连接成功,修改label的文本 ui - mqtt_client_state - setText ( "连接服务器:成功" ); // 订阅主题 m_client - subscribe ( QMqttTopicFilter ( "devacademy/publish/topic" )); }); // 连接信号槽,处理消息接收事件 connect (m_client, QMqttClient::messageReceived, this, MainWindow::onMessageReceived); // 启动MQTT连接 m_client - connectToHost (); // 创建并启动连接状态检测线程 MqttConnectionChecker *checker = new MqttConnectionChecker (m_client, ui - mqtt_client_state, this); connect (checker, MqttConnectionChecker::updateStatus, this, ( const QString status) { ui - mqtt_client_state - setText (status); }); checker - start (); } 8、编译订阅回调如下: void MainWindow:: onMessageReceived ( const QByteArray message, const QMqttTopicName topic) { Q_UNUSED (topic); // 解析JSON数据 QJsonDocument doc = QJsonDocument:: fromJson (message); if (!doc. isNull () doc. isObject ()) { QJsonObject obj = doc. object (); double temp = obj. value ( "temp" ). toDouble (); double press = obj. value ( "press" ). toDouble ()/ 100 ; double humidity = obj. value ( "humidity" ). toDouble (); int iaq = obj. value ( "iaq" ). toInt (); double co2 = obj. value ( "co2" ). toDouble (); double voc = obj. value ( "voc" ). toDouble (); //将这些数据更新到UI ui - label_temp - setText (QString:: number (temp, 'f' , 2 )); ui - label_press - setText (QString:: number (press, 'f' , 2 )); ui - label_humidity - setText (QString:: number (humidity, 'f' , 2 )); ui - label_iaq - setText (QString:: number (iaq, 'f' , 2 )); ui - label_co2 - setText (QString:: number (co2, 'f' , 2 )); ui - label_voc - setText (QString:: number (voc, 'f' , 2 )); // 在这里可以将解析后的数据更新到UI或其他处理逻辑 } else { qDebug () "Invalid JSON message received" ; } } 五、实验效果 编译好程序后,上传到开发板,运行后,效果如下: 六、总结 米尔-STM32MP257开发板,通过QT来设计UI界面,通过mqtt来订阅指定的主题,实现环境监测。在物联网方面大有作为!
  • 2025-4-11 18:14
    115 次阅读|
    0 个评论
    本文介绍Linux开发板CAN总线测试方法,使用 触觉智能EVB3568鸿蒙开发板 演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持OpenHarmony5.0及Linux、Android等操作系统,接口丰富,开发评估快人一步! 方法一-主板can节点对接测试 1、检测主板是否有CAN节点 ifconfig - a 2、连接主板上的两个CAN接口: 注意某些主板虽硬件参数中带有CAN接口,但实际可能被复用成其他默认功能,具体请查看对应硬件规格书,找到CAN接口,以触觉智能RK3568开发板EVB3568-V1为例,使用J39。 、 将这里的两组CAN信号,H对H,L对L 连接好 3、配置通信基本参数,命令如下: ip link set can0 down #需先关闭can ip link set can0 type can bitrate 250000 #设置通信速率 ip -detail link show can0 #查看设置是否生效 3 : can0: NOARP,ECHO mtu 16 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 10 link /can promiscuity 0 minmtu 0 maxmtu 0 can state STOPPED (berr-counter tx 0 rx 0 ) restart-ms 1 bitrate250000 sample-point 0 . 868 #bitrate 250000生效 tq40 prop-seg 42 phase-seg1 43 phase-seg2 13 sjw 1 rockchip_canfd: tseg1 1..128 tseg2 1..128 sjw 1..128 brp 1..256 brp-inc 2 clock 148500000 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 root@industio:~# ip link set can0 up #启用can0 #can1的设置如上一致,只需将can0替换为can1即可 4、测试验证,命令如下: cansend can0 123 #DEADBEEF #can0 发送 candump can1 #can1接收 效果如下: 方法二-使用USB转CAN工具与CANTest软件进行测试。 1、将抓包工具上的CAN0接口与主板CAN0接口,H对H,L对L接好,另一端与电脑usb接口连接。 2、CANTest软件参数设置 下载CANTest软件安装后,启动软件后界面如下,我们关闭弹出的界面,点击左上角的设备选择。 选择USBCAN1设置,设置对应的波特率,其他参数默认即可。 注:主板CAN接口的参数设置请根据本文方法一第3段-设置通信基本参进行设置。 3、测试验证 把candump can0,can0进入接收模式,CANTest工具发送数据验证。
  • 2025-4-11 18:06
    48 次阅读|
    0 个评论
    设备间的高精度协同控制与实时通信能力,成为了制造业不可忽视的性能指标。近日, 触觉智能RK3506核心板 带来EtherCAT总线技术,结合59元低成本、多核异构架构与工业级可靠性,为工业自动化领域提供高性能、高性价比的解决方案。。 EtherCAT总线 EtherCAT是什么 EtherCAT核心原理:主从架构与“逐帧处理”,全称Ethernet for Control Automation Technology是一种基于以太网的实时工业总线协议,其核心创新在于 “On The Fly”逐帧处理机制。 EtherCAT技术特性 100Mbps传输速率下,1000个I/O刷新周期仅需30μs,8轴伺服同步控制时延1ms。同时支持线型、树形、星型等任意拓扑,无需交换机即可实现冗余环形网络。 EtherCAT协议优势 精简协议栈:仅需物理层、数据链路层和应用层,硬件处理协议栈延迟5μs,CPU负载降低25%-30%。 兼兼容性强大:原生支持CODESYS、IgH主站协议,兼容Beckhoff、欧姆龙等主流伺服驱动器。 RK3506与EtherCAT结合特性 Latency optimization(延迟优化) 通过以太网连接多个伺服驱动器从站,可以精准控制伺服电机,支持适配专用网卡驱动,实时性更强! 技术指标 根据原厂数据,实测延时抖动性能达到10%以内(控制周期为1毫秒) 工业可靠性 此外,在触觉智能RK3506核心板≤0.7W功耗与-40~85℃宽温性能下,更好地满足EtherCAT下在各类环境更好地稳定运行。 EtherCAT应用场景落地 智能产线控制 触觉智能RK3506核心板可搭配 星闪(NearLink)无线技术 ,结合EtherCAT主站驱动8轴伺服,实现千级设备组网,时延仅为传统方案的1/30。 工业机械手 触觉智能RK3506核心板在 APM多核异构系统 下,可通过RTOS系统处理关节控制,Linux系统运行视觉,支持环形拓扑简化布线。 高精度检测设备 EtherCAT同步触发100MSPS高速ADC,数据直传MES系统,搭配LVGL界面实现μs级波形显示! 分布式能源系统 EtherCAT配合星闪(NearLink)技术方案,保障冗余环形拓扑保障电网通信不间断,更适合能源电力等场景。 触觉智能RK3506核心板 视频: 18:06 00:00 01:56 高清 倍速 原画 1080P 超清 720P 高清 540P 2.0x 1.5x 1.25x 1.0x 0.8x 50 跳过片头片尾 是 | 否 色彩调整 亮度 标准 饱和度 100 对比度 100 恢复默认设置 图文:
相关资源