自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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

原创 正点原子H743阿波罗v1+NetxDuo+CubeMX+CubeIDE无脑配置版

首先打开CubeMX,MCU里选择H743IITx。

2024-03-28 14:33:32 5131 1

原创 正点原子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 代码系列(35)动态障碍物预处理_激光雷达部分

主要讲解动态障碍物在激光雷达部分的剔除机制

2023-04-11 10:44:17 975

原创 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安装配置与高级功能开发指南

内容概要:本文档为《Virtual PLCnext Control用户手册4.1.4》,由PLCnext SW Ecosystem&Business团队编写,旨在指导用户安装、配置和使用Virtual PLCnext Control。文档详细介绍了系统的安装要求、配置步骤、运行环境搭建、PROFINET子站和IO组态配置、高级功能开发(包括C++、C#编程、WebHMI功能、OPC-UA和WBM管理)以及故障排除等内容。此外,还提供了常用命令和命令规则的参考。 适合人群:具备一定自动化控制基础,特别是熟悉PLC编程和网络配置的研发人员、工程师和技术支持人员。 使用场景及目标:①为用户提供详细的安装指南,确保Virtual PLCnext Control能够在目标机器上顺利运行;②指导用户进行PROFINET子站和IO组态配置,实现工业自动化控制;③介绍高级功能开发,帮助用户扩展系统功能,如通过C++、C#编程实现复杂逻辑控制,利用WebHMI实现人机交互界面,通过OPC-UA实现与其他系统的互连互通;④提供故障排除方法,确保系统稳定运行。 阅读建议:此手册内容详尽,涵盖从基础安装到高级功能开发的各个方面。建议用户根据自身需求选择性阅读,并结合实际操作进行实践。特别是对于初次使用者,建议先掌握基础安装和配置部分,再逐步深入高级功能开发。对于遇到的具体问题,可以参考手册中的故障排除章节,及时解决问题,确保系统正常运行。

2025-07-21

WIN10作为VM需要用到的OVMF.fd(12代core通用)

ACRN Hypervisor 使用WIN10作为VM需要用到的OVMF.fd 仅适用于core的12代cpu!!!!! 仅适用于core的12代cpu!!!!!

2024-08-22

Ubuntu美化.rar

适合Ubuntu18、Ubuntu20的美化包

2021-03-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除