- 博客(120)
- 资源 (1)
- 收藏
- 关注
原创 如何在far_planner 中使用yolov4 之加入dnn检测模块 之ROS Noetic with yolov4 in Opencv DNN module
今天讲的是如何在noetic里用dnn模块来使用yolov4yolov4 ros noetic这篇文章给了很大的启发,不过在处理opencv的问题上,现在主流的做法是不去动noetic里本身的cv_bridge了,而是在pkg里加入一个opencv的bridge包。众所周知,noetic里配的是3.2版本的cv,太老了,没有办法用dnn模块(dnn至少要3.3以上的opencv才会有)。所以,先去opencv的官网下载source。我下载的是OpenCV – 4.5.4解压opencv然后2.创建ro
2022-06-19 10:31:30
1750
3
原创 手把手搭建dxslam
https://github.com/ivipsourcecode/dxslamhttps://github.com/ivipsourcecode/dxslam源代码地址放上!编译过程跟orbslam类似。git clone https://github.com/raulmur/DXSLAM.git DXSLAM安装库,Opencv 推荐3.4版本就可以了;Eigen3 去官网源码编译即可,Pangolin 这是个毒瘤编译出错大多是因为Pangolin的版本有问题,会报一堆Glew的错误
2022-01-12 15:26:31
1902
20
原创 Virtual PLCnext Controller 本地网络部署平台
VirtualPLCnextWebDeploy是一个基于Web的本地化部署平台,简化了VirtualPLCnextController的安装流程。它利用podman技术,通过浏览器访问(https://<hostip>:3001)实现远程管理。主要功能包括镜像上传、实例配置(支持多网卡/设备/目录挂载)、安全规则设置及实例自启动管理。平台特别优化了非Linux用户的使用体验,支持内核配置检测,兼容菲尼克斯2025-2026版本控制器。部署仅需三个步骤
2025-08-27 10:11:41
463
原创 RTS Hypervisor分配网卡、磁盘、USB端口
本文详细介绍了在RTS Hypervisor环境下为Linux系统分配磁盘、网卡和USB设备的配置方法。主要内容包括:1)将RAMFS系统转换为磁盘存储系统,提供完整的SATA磁盘、分区磁盘和NVME磁盘配置方案;2)通过readtrace工具识别PCI设备,为Linux分配网络接口卡并配置静态IP;3)USB设备分配方法,包括端口识别和权限配置。文中详细说明了配置文件修改步骤,并提供了设备识别、分区创建和网络配置的具体命令操作指南。这些配置使得Linux系统能够获得持久化存储、网络连接和外设访问能力。
2025-07-23 09:32:16
943
原创 TenAsys RTS hypervisor
一般来说,RTS自带的6.1 / 6.6实时内核里的一些配置项可能达不到我们自己的需求,那么我们需要对RTS重新编译Linux内核,这里RTS给我们提供了一系列工具,当然你需要一台Ubuntu22.04作为开发机。您的软件包可能类似于,我们需要一台带 Vmware 的开发机,如 Ubuntu 22.04。在使用make menuconfig更改内核选项时,请预先安装所需的软件包。解压 RTH-Release_RX.x.xx.xxxxx_TenAsys_INtime_port.zip。
2025-07-21 13:50:28
961
原创 ACRN-Configurator白屏问题
摘要:在Ubuntu 22.04上安装ACRN配置器时出现白屏问题,原因是libwebkit2gtk版本(2.44.3)存在缺陷。通过降级至2.36.0版本并安装相关依赖包(需注意依赖顺序)可解决问题。建议使用dpkg直接安装.deb包,避免apt自动更新到错误版本。完整解决方案包括:1)降级关键库文件;2)正确处理多层依赖关系;3)使用wget下载指定版本安装包后dpkg手动安装。该方法成功解决了配置器无法启动的问题。
2025-06-13 09:54:09
526
5
原创 VPLC (VPLCnext) & K8S
在接触Virtual PLCnext Control的时候,我想过好几次如何将它运行在k8s上,由于对k8s的熟悉程度不够,跌跌撞撞尝试了很久,终于把vPLC部署在单机版的k8s上了。
2025-05-22 09:38:25
962
原创 VMDK转img并制作U盘启动安装到无系统的PC机上
今天收到大佬给的一个VMDK的deibian系统的虚拟机,在测试实时性时发现极其出色,故因此想把改VMDK转化成可以直接安装在实体机器上的Linux操作系统。
2025-03-21 08:48:29
784
原创 树莓派4b实时性优化与编译rt内核
既然需要preempt-rt实时性,那么就选择最精简的镜像,不要带桌面。3d环境和桌面环境都会降低实时性。选择Raspberry Pi OS Lite进行烧录。
2024-12-11 15:59:10
954
原创 stm32h743 threadx + filex(SD卡读写) + CubeMX + CubeIDE
今天整了一下正点原子阿波罗h743的filex,按部就班的使用CubeMX去搭建环境,再用CubeIDE去编写程序,里面也有几个小坑,问题不大。
2024-10-09 23:49:57
857
原创 Filex的一些踩坑
因为客户需要做文件系统,因此做了filex,但是里面的坑也不少啊。比如报错0x90 0x18、电脑格式化新sd卡识别不到,必须用格式化才可以,用这个格式化以后再用电脑格就都能识别出来、重复fx_media_open和fx_media_close以后会报错0x90 0x18,不同cpp文件调用filex对同一个SD卡进行读写发现sd卡的结构体寄了等等问题。首先filex必须要运行在ThreadX的线程里,不论调用任何fx函数,它都会进行检查,以为例,它会先调用。
2024-09-10 10:39:27
945
原创 ACRN中ECI的img做为vm镜像,修改其内核启动配置
在ECI中,默认为我们配置了cpu1和cpu3或者cpu2和cpu4的隔离核,但是我们将eci的img作为ACRN的rt-vm镜像的时候,可能配的cpu数量不是完全一样的,也有可能自己需要配置一些内核启动参数。在ECI官网上能够看到针对rt-VM需要修改的一些内核配置。这里是rt-vm的内核启动配置,而不是SOS(ACRN Service VM)的内核启动配置,不要搞混了。
2024-09-04 14:26:36
556
原创 正点原子f407使用cubemx创建 fatfs的一些bug记录
这个坑爹东西,默认选了4B,4B会报错,需要在这里设置成1B才行!能识别到了,在这里想骂一句CubeMX,你特娘的。添加一下printf重定向到串口。添加一下打印sd卡信息的函数。
2024-08-30 22:52:28
303
原创 ACRN Hypervisor之网卡争端
根据网页,我们可以知道安装完ACRN之后,有一个使用systemd-networkd初始化网卡的命令。这时候会创建一个网桥,叫做acrn-br0。还会有tap0,这个tap0是我们可以去分配给VM的一个桥接的网卡例如,下面的launch脚本中创建了一个RT_VM1,使用了tap0这个网卡。但是tap0只能被一个VM所使用,也就是VM1如果使用了tap0,那么VM2就无法使用tap0了。对于多个VM需要使用网卡的情况,我们需要添加tap1 tap2甚至tap3。
2024-08-22 10:32:31
559
原创 intel ECI作为ACRN VM使用dpdk(vfio和iommu问题)以及img扩容
对非虚拟机而言,只要在BIOS里开启VT-d就可以用iommu去映射vfio使用DPDK,但是在虚拟机中即便BIOS开启了VT-d,它也传不到VM中。因此这个帖子解决一下这个问题。在ACRN的launch脚本中需要passthru两个网卡,一个用来做静态ip,另一个做dpdk的vfio口我们要改一下vm的内核启动参数,这个和正常在ubuntu里面修改grub不一样,我们需要在外面挂载分区1,再进行修改进入VM后,按下面操作,即可绑定vfio。
2024-08-21 16:09:40
478
原创 Intel ACRN hypervisor安装WIN10作为guest VM
ACRN可以把它理解为一个基于Linux类似软件的Type1 Hypervisor,基于Linux去做而不是baremetal是为了更方便去配置资源。首先我们得有两台电脑,一台是,另一台是主要用于编译ACRN_hypervisor和ACRN_kernel ,另外建议目标机使用intel的ECI-Jammy(基于ubuntu魔改的)目前版本应该在3.1运行ACRN_Service_VM以及guest_VMs。
2024-08-17 10:14:50
2046
3
原创 threadx 线程以及优先级调整案例
在hey.c里面,我们创建了一个线程,线程占用的栈大小为1024,指针为pointer,记得要初始化一下指针(我这里用的是threadx的方法,如果不想这么复杂,需要传入memory_ptr然后byte_pool的话,其实直接pointer = malloc(1024)也是可以运行的,就是自己要手动free)。在main.c里面添加一个printf转串口的代码,这样我们用printf就可以直接转发到串口,我在之前用CubeMX设置的是串口1,用的是PA9和PA10,所以这里也设置的是huart1。
2024-07-14 11:12:29
601
原创 netxduo http server 创建回复以及json解析
这个nx_web_http_server_content_get的意思是放入server的指针以及packet的指针,偏移量是0也就是从body的第一个字符开始读取,读取的结果保存到buffer这个字符串数组里,读取的长度是1024,actual_size是他实际的长度。我们今天要整http的response,比如我创建的http server,我对它发送了一个POST,然后服务器解析出json里的body,再回复过去。回到ide里,我们可以看到,buffer里的内容正是完整的json字符串。
2024-07-13 17:34:04
316
原创 stm32h743 NetXduo 实现http server CubeIDE+CubeMX
同样,在FLASH.ld里面也要对应修改,增加.tcp_sec和 .nx_data两个区,我们用ram_d2区域去做网络,这个就是对应每个数据在d2区域的起点。在netxDuo里设置,在头文件里设置静态ip,我自己设置的是192.168.8.116。在CubeMX里,需要用到filex、dhcp和web_server,记得勾选上。在这边要设置mpu的大小,要用到http server,mpu得设置的大一些。在app_filex.c里删掉MX_FileX_Init多余的部分。我是这么设置的,做一个参考。
2024-07-11 11:31:01
1058
1
原创 threadx netxduo stm32f407上实现http server
要把NX_APP的mem分配的大一些,在app_azure_rtos.c中,我给的是40*1024,如果给的不够,会导致后面无法分配pool和thread等等。在这里设置导航,我写了一个/GetTXData,让它返回当前IP地址,大家自己实现自己的东西就可以。需要用到filex 要在CubeMX里面勾选上,还要用到http_server和dhcp。在app_filex.c里删除多余的东西,就保留这样。在nx_stm32_eth_config.h里添加。这次用的是CubeIDE + CubeMX。
2024-07-10 23:24:55
846
原创 NetXduo使用BSD (stm32H7 )
在App_netxduo.c里面,实例化ip之后,添加一个bsd初始化。如果在nx_port里没有定义,则这一步会返回错误ret=8,环境没有初始化。回到CubeIDE里,Core下创建BSD文件夹,把头文件和源文件放到里面,如果放到Middlewares里面每次用CubeMX配置都会消失。在Middlewares/ST/threadx里找到tx_port.h,在这一行加上bsd_errno。点击左上角的tag,选择和你版本对应的bsd.c和bsd.h文件。打开工程配置,关闭这几个。
2024-07-10 10:28:50
520
原创 PLCnext用三种方式去编写一个功能块
我们用简单的三种方式去进行建立功能块,当然C#和C++同时都可建立函数、实例程序这里需要注意几点:1. 纯C#的平台是全系通用,开发出一个功能块可以适用于所有PLCnext设备2.C++的不是全系通用,需要根据不同的设备使用不同的SDK,不过好在在开发的时候可以选择多个SDK,一次性就能把所有的SDK都选上,功能块会自动匹配对应的设备类型。3.C++可以结合第三方的代码,例如sqlite3、inflexdb、socket、mqtt等等。
2024-05-13 11:33:59
2447
原创 啥是PLCnext?它能干啥?
简单来说,PLCnext是基于Linux操作系统的一个控制器运行时,所以它原生具备的两个特点:1.原生兼容IEC611312.原生兼容Linux各类应用PLCnext的控制器大概长下面这样(AXC F 1152、2152),通过背板总线连接IO、通过网口连接Profinet或者上位机。
2024-05-13 09:59:03
1388
原创 ACRN Intel推出的虚拟机是啥样的?
ACRN作为Intel为工控领域推出的一个小型化的虚拟机,它的特点主要有这么几个:1.针对Intel的芯片做了非常强的优化2.RT-VM实时虚拟机的实时性很好3.CACHE缓存技术发挥的好4.TCC技术 / 当然不是所有intel的芯片都支持,,,得带e的芯片才行。
2024-04-22 10:54:45
2381
1
原创 解开Intel ECI 的面纱
当然ECI也提供了让我们去自定义修改内核参数的方法,可以参考ECI的链接第一种就是根据我们编译ECI的环境,去进行kernel的修改。这里只有一个地方要注意,当我们选择manual build的时候,下面会给出几行命令,我们需要修改一下KAS的那行,把改成就可以进入bitbake,然后在按照上面链接里的方式去编译即可。最后生成deb文件,拷贝到目标系统里 用dpkg -i 去安装就可以了。第二种是在已经运行ECI的目标机器上去编译内核。
2024-04-22 10:00:46
2578
14
原创 虚拟化PLC,虚拟控制,PLCnext Virtual Control
PLCnext是一个四位一体的生态系统,包含PLCnext Control、 PLCnext Engineer、 PLCnext App Store和PLCnext community。简单来说,菲尼克斯的PLCnext自动化平台。
2024-04-12 09:34:48
3718
原创 正点原子STM32f407探索者 +ThreadX + NetXDuo + MDK
CubeMX+MDK ThreadX和NetX 正点原子 stm32f407
2023-12-16 16:26:35
1987
原创 Ubuntu下vscode dotNet downloading的问题(Cmake代码高亮)
问题描述:使用Cmake Language Support插件需要安装dotnet的支持库,我原本已经使用apt的方式安装了,但是进入vscode依旧要我下载。
2023-10-15 14:24:27
955
原创 基于IPC-CFX的点对点通信C#
在vscode里建立新的dotnet项目,可以通过终端输入dotnet new console来建立,文件目录为CFXDemo->machine1和CFXDemo->machine2。IPC-CFX有两种主要的通信方式,可以通过RabbitMQ发布和订阅,也可以通过request和response进行点对点的通信,本文主要讲的是点对点的通信方式。运行结果,可以用json格式对response和request的内容进行解析。
2023-07-19 20:32:37
2901
原创 Vscode配置grpc+c#+proto
第一部分是proto的path,第二部分是options的内容,分别为proto-path(也就是你要编译的proto的地方),csharp_out就是C#的输出文件,grpc_out就是根据C#输出的带有C#风格的grpc的cs文件。首先是环境配置,用的dotnet5.0的sdk,所以Vscode的C#插件版本要选择1.24,然后需要配置C# Snippets、NuGget Package Manager、vscode-proto3、vscode-solution-extension(可选)。
2023-07-18 10:39:40
1611
原创 FAR Planner带注释代码部分
工具包部分包含一些图表的绘制以及记录一些数据,比如record_odom就是用来记录里程计的,goal_pub_new用来对于特定的地图发布一组连续的导航点,用于评测论文数据。search_path_time用于记录每一次搜索算法运行的时间等等,文件里会有注释用途。目前开源了主函数部分的注释以及一些自己写的工具包。
2023-04-05 17:11:39
764
2
原创 Far planner 部署真实小车 & 树莓派部署lego_loam
今天开一贴Far planner的部署,也算是lego loam的部署吧 因为state_estimation用的是lego loam小车底盘: 轮趣的mini差速底盘外加多一层钢板,中间层用来放velodyne的电池(小的电池还没到,大的电池塞不进去目前)和velodyne信号盒子。前面还可以加一个相机。底层用来放小车的电池和马达等设备了,底层不用动。最上面一层用来安装velodyne16线雷达,需要额外钻孔(如果买轮趣的话可以找老板钻个孔?我也不确定,我自己钻的)。 雷达固定螺丝用的是 1/4-20*3
2022-07-12 21:44:43
4117
22
原创 Manjaro Archlinux 安装ros noetic (非docker版)
这里先建议一下,最好是刚刚装完的系统,比如刚安装完的manjaro(需要AUR源和PARU) 在这个之前,千万不要改源!!!也不要安装archlinux-cn!!!!!!! 否则系统yay paru可能会找不到ros-noetic-desktop-full在这个源!安装yay安装paru 安装proxychains-ng(因为需要终端访问GitHub,这个是必须的,不然编译和下源码都gg)在 /etc/proxychains.conf里修改sock的配置,一般是这样:socks5
2022-07-10 22:52:50
1936
原创 用far planner跑自己的rosbag
far planner是结合cmu的automantion环境一起跑的,far planner只是一个上层的路径规划算法,所以并不涉及对于机器人的姿态估计和控制。因此我们需要将这一部分用开源代码来替换,比如loam,a-loam和lego-loam。 首先我们需要下载cmu_automantion的matterport版本,对于lego-loam,我们需要修改cmu_automantion 的src中的loam_interface的launch文件,将stateEstimationTopic的
2022-07-08 12:32:32
1834
13
原创 manjaro开启热点设置密码WPA/WPA2后iphone连不上
问题发现: 用manjaro开启热点,如果热点是没有密码的,那么iphone就能脸上,但是设置了wpa/wpa2后,即使iphone输入的密码是对的,也连不上。解决: 这是一个bug,在manjaro论坛里可以搜到 比如输入关键字 bug wpa2 connect wifi要安装一个aur的包然后重启系统在进入设置里 现在iphone就可以正常连接上了...
2022-07-07 10:15:29
1498
原创 manjaro安装微信
然后去微信官网下载微信安装包,exe结尾的,在下载完后的目录打开终端,输入等安装完即可,登录以后如果发现输入框不能显示文字,就安装然后退出微信并在终端运行不管报不报错,退出以后重新启动微信,发现安装完成,可以显示文字了 甚至可以用截图了!还可以直接发送截图的图片...
2022-07-02 23:30:56
5654
1
原创 manjaro (archlinux) 安装ros1 noetic
首先,我们先安装docker然后设置docker服务开机自动启动添加组拖入noetic-desktop-full编写Dockerfile接着构建容器启动容器 这时候应该可以进去了,然后把noetic加入到bashrc里目前完成了,可以开个rqt看看输入exit 退出当前docker以后需要打开noetic就这么打开:.....................
2022-07-02 19:12:13
928
原创 Ubuntu配置opencv4 vscode
c_cpp_properties.json task.json这里主要看"`pkg-config --cflags --libs opencv4`" 这个地方 如果是opencv4.x版本就是opencv4,如果是opencv3.x版本的就是opencv 如果显示没有找到opencv.pc的话,根据网上的教程去写一个opencv.pc就行了...
2022-06-22 13:59:53
358
【工业自动化】Virtual PLCnext Control用户手册4.1.4:虚拟PLC安装配置与高级功能开发指南
2025-07-21
WIN10作为VM需要用到的OVMF.fd(12代core通用)
2024-08-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅