
编程环境
文章平均质量分 67
具身小站
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从零构建并使用自己的pip包
本地我配置了阿里云镜像,当前还没同步到阿里云,所以需要指定pypi源即可安装。详细输出中会显示下载URL,确认是否使用了正确的源。查看当前pip源配置。原创 2025-08-19 09:05:30 · 897 阅读 · 0 评论 -
从零开始使用jupyter虚拟环境
Anaconda默认安装了jupyter notebook,直接启动即可。原创 2025-08-17 12:16:33 · 294 阅读 · 0 评论 -
ARM Cortex-M系列控制器详解
ARM Cortex-M系列是专为嵌入式系统和物联网设备设计的低功耗、高能效微控制器内核,覆盖从基础控制到高性能边缘计算的全场景需求。原创 2025-08-12 17:10:34 · 996 阅读 · 0 评论 -
开源生态认证体系介绍
开源生态中的认证体系可以分为:开源合规认证、开源协议认证和技术能力认证。原创 2025-08-12 17:09:36 · 395 阅读 · 0 评论 -
从零认识开源促进会OSI(Open Source Initiative)
OSI(Open Source Initiative,开源促进会)是国际公认的开源协议标准制定与认证组织,其核心使命是定义和维护“开源”的法定标准,确保开源软件的法律合规性和生态互信。原创 2025-08-11 15:07:11 · 1122 阅读 · 0 评论 -
从零认识开源许可证
开源许可证(Open Source License)是一种法律许可,版权拥有人通过它明确允许,用户可以免费地使用、修改、共享版权软件。明确了用户的权利和义务,保障了开发者的权益。同时,开源许可证是一种具有法律性质的合同,目的在于规范受著作权保护的软件的使用或者分发行为,是开源软件的法律基础,规范了软件的使用、修改和分发行为,促进了软件的协同开发和共享。原创 2025-08-11 15:06:48 · 504 阅读 · 0 评论 -
MIT和OAuth协议的意义和区别
本质类型:网络授权协议标准(RFC 6749)目的:允许第三方应用在用户授权下安全地访问用户在另一服务上的资源核心理念:不共享密码,使用访问令牌(access token)代替工作原理用户想让应用A访问其在服务B上的数据应用A将用户重定向到服务B的授权服务器用户在服务B上登录并授权应用A的访问权限服务B返回授权码给应用A应用A用授权码换取访问令牌应用A使用访问令牌访问服务B的API应用场景社交登录:使用微信/Google/Facebook账号登录第三方应用。原创 2025-08-10 17:35:27 · 812 阅读 · 0 评论 -
github上最多的三个开源协议对比
特性MIT许可GPL系列Apache 2.0闭源商用✅ 允许❌ 禁止✅ 允许专利保护❌ 无⚠️ GPLv3有,v2无✅ 明确授权传染性无传染性强传染性(衍生作品开源)无传染性修改要求仅保留声明衍生作品强制开源标注修改+保留声明企业应用占比10.8%(第2位)9.5%(第4位)15.3%(第1位)典型场景个人工具库、前端框架操作系统、自由软件企业级中间件、AI模型。原创 2025-08-10 17:34:59 · 650 阅读 · 0 评论 -
当前开源协议概述及分类对比
开源协议是管理软件源代码使用、修改和分发规则的法律框架,旨在平衡开发者权利与社区自由。根据限制程度,主流协议可分为宽松型、强开源型(Copyleft型) 和混合型。原创 2025-08-09 18:23:02 · 987 阅读 · 0 评论 -
Cortex-M系列的TI(德州仪器)和ST(意法半导体)的芯片对比
对标ST系列:STM32L0/L4(低功耗),但MSP430FR的FRAM写入寿命(1亿次)优于ST的Flash/EEPROM。无直接ST对标:ST的高性能产品(如STM32F4/H7)需依赖Cortex-M核的FPU,实时性弱于C2000。非ARM架构(TI自有32位DSP核),主打高精度PWM(150ps)、硬件浮点加速,用于电机控制/数字电源9。对标ST系列:STM32WB(双核蓝牙MCU),但TI的协议栈集成度更高,开发更简化。ST:ST-Link性价比高,但多核调试(如H7)易卡死8。原创 2025-08-04 11:18:53 · 828 阅读 · 0 评论 -
TI(德州仪器)的芯片产品概述
德州仪器(TI)的芯片产品线覆盖微控制器(MCU)、数字信号处理器(DSP)、汽车专用芯片及边缘计算处理器等,各系列针对不同应用场景优化。原创 2025-08-04 11:18:06 · 718 阅读 · 0 评论 -
ARM处理器概述及对比
随着AIoT与自动驾驶发展,ARM通过异构架构(CPU+NPU+GPU)持续拓展边界,但需应对RISC-V开源生态的竞争挑战。开发者需结合实时性、能效、成本三要素,选择最优处理器方案。定位:汽车电子(ABS、引擎控制)、工业PLC实时控制、存储控制器等硬实时场景,要求μs级中断响应。定位:智能手机、平板、服务器等通用计算场景,支持复杂操作系统(如Linux、Android)。代表型号:Cortex-R52/R82(ARMv8-R架构)。定位:IoT设备、传感器、家电控制等电池供电场景。原创 2025-08-02 22:03:07 · 1144 阅读 · 0 评论 -
嵌入式系统的中断控制器(NVIC)
尽管NVIC是ARM Cortex-M内核标准组件,但各厂商会根据需求裁剪或扩展功能,不同芯片的NVIC实现差异本质是厂商对ARM标准的裁剪与扩展,开发时需查阅具体芯片手册,重点关注优先级位数、分组方式、唤醒源配置等。核心价值:NVIC通过硬件级中断管理、自动状态处理及低延迟优化,为实时系统提供确定性响应,是Cortex-M芯片实时性的基石。原创 2025-08-02 21:32:25 · 316 阅读 · 0 评论 -
嵌入式系统中常用通信协议
特性I2C (TWI)SPICAN同步/异步异步异步同步同步异步串行/并行串行串行串行串行串行双工方式全双工半双工 (通常)半双工全双工 (通常)半双工主从/对等点对点 (无主从)多节点 (主/从)主从 (多从)主从 (多从)多主/对等寻址方式无 (物理连接)无 (需软件)7/10位地址硬件片选 (SS/CS)消息 ID时钟线无无SCLSCLK无数据线数量总线拓扑点对点多点 (总线型)多点 (总线型)点对点 / 星型。原创 2025-08-01 18:15:23 · 950 阅读 · 0 评论 -
STM32芯片简述
STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器,常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等。原创 2025-08-01 17:34:29 · 386 阅读 · 0 评论 -
零基础FreeRTOS的常用函数示例
【代码】零基础FreeRTOS的常用函数示例。原创 2025-07-28 18:03:18 · 318 阅读 · 0 评论 -
从零开始运行ESP32的Helloworld程序
安装依赖库cd esp32# ESP工具# esp-idf# 切换到最新的稳定版本5.5cd esp-idf# 更新所有子模块到对应分支版本# 安装编译工具。原创 2025-07-28 14:01:13 · 147 阅读 · 0 评论 -
从零本地部署使用Qwen3-coder进行编程
【代码】从零本地部署使用Qwen3-coder进行编程。原创 2025-07-25 22:35:46 · 818 阅读 · 0 评论 -
ROS1和ROS2详细对比分析
从Ubuntu22.04或者2025年6月开始,官方基本不再升级支持ROS1,推荐切换到ROS2,ROS 2 在架构、实时性、安全性和生态扩展性上显著优于 ROS 1,如果是新项目开发建议直接使用ROS2,但如果迁移需权衡现有资源与长期收益。详细Ubuntu版本支持关系见链接。原创 2025-07-21 18:11:23 · 1332 阅读 · 0 评论 -
从零开始完成ROS2项目调试运行
VSCode 集成 :安装 ROS 2 插件后,可通过快捷命令(如 rl-colcon-build)直接在 VSCode 中编译项目。命令行补全 :安装 ros2cli 后,支持命令自动补全(如输入 ros2 launch 自动列出包名和 Launch 文件)。类似发布代码一样,编写监听代码(sub_node.py),配置setup.py后,重新编译包,最后启动测试。调试 :结合 ros2 node、ros2 topic、ros2 param 等工具实时监控系统状态。原创 2025-07-17 14:32:56 · 786 阅读 · 0 评论 -
ROS2中分布式通信原理详解
ROS2 的通信原理基于采用分布式架构的 DDS(Data Distribution Service) 中间件,是一种以数据为中心的发布-订阅模型,其核心原理是节点之间通过实现分布式通信,进行数据交换,无需中心节点(ROS1 的 Master)。原创 2025-07-17 14:32:13 · 816 阅读 · 0 评论 -
ubuntu24.04系统的Jazzy 和 Kilted 区别对比
特性JAZZY版本号第 8 个正式版本(LTS)第 11 个正式版本发布时间2024 年2025 年 5 月支持周期约 2-3 年(推测)至 2026 年 11 月核心特性安全性增强、Gazebo 集成优化新功能、开发流程改进适用场景生产环境、长期项目实验性项目、前沿技术验证推荐用户企业用户、工业应用开发者研究人员、技术尝鲜者。原创 2025-07-12 10:17:45 · 518 阅读 · 0 评论 -
从零开始基于Ubuntu 24.04搭建ROS2环境
账号密码:suo/123。原创 2025-07-12 10:17:00 · 606 阅读 · 0 评论 -
ROS系统构建工具解释对比(catkin、colcon)
Catkin 是 ROS1 的构建系统框架,提供包管理、依赖解析和构建工具集成,catkin_make 和 catkin_make_isolated 是其具体实现工具,均通过封装 CMake 实现功能,Catkin 作为底层框架,为两者提供统一的构建逻辑和依赖解析能力作为底层框架,为两者提供统一的构建逻辑和依赖解析能力。Ament对标Catkin,是ROS2的系统框架,通过colcon进行构建,colcon对标catkin_make。原创 2025-06-20 15:11:12 · 929 阅读 · 0 评论 -
ROS建图常用调试话题及解释
路径规划 :通过解析 x, y, yaw 可指导机器人沿目标路径移动。通过对比 TF 输出与预期值,可验证传感器数据融合或定位算法的准确性。导航定位 :map → base_link 的变换是Cartographer导航栈输出的核心数据,用于确定机器人在地图中的精确位置。原创 2025-06-19 10:48:31 · 720 阅读 · 0 评论 -
从零Gazebo中实现Cartographer算法建图(新目录)
【代码】从零Gazebo中实现Cartographer算法建图。原创 2025-06-18 19:23:15 · 443 阅读 · 0 评论 -
多个机器人同时加载在rviz及gazebo同一个场景中
gazebo的加载相对容易,但rviz中加载,需要构建完整的tf树(world → map(或map_merged)→ odom → base_footprint → base_link → base_scan)才能正常显示,launch文件主要是在构建tf树。2. 修改urdf模型为各机器人增加tb3/odom->tb3/base_footprint的tf映射,防止odom->base_footprint全局tf映射。3. 执行原创 2025-06-13 11:41:15 · 662 阅读 · 0 评论 -
机器人坐标变换TF(ROS Transform)示例解释
用于发布实时变化的坐标系变换 (如机器人本体运动),需通过代码实现,下面示例发布odom到base_footprint的动态变换(里程计坐标系到机器人2D投影坐标系)。多机器人场景 :在多机器人系统中,需通过命名空间区分坐标系(如robot1/base_link),并通过world坐标系统一管理。使用rospy.Time(0)获取最新缓存数据,避免因时间戳不匹配导致失败。若需精确时间点的变换(如传感器数据同步),需确保时间戳对齐。原创 2025-06-12 08:53:32 · 570 阅读 · 0 评论 -
汽车常用通信协议对比(CAN、Ethernet、LIN等)
实际汽车通信中,通常采用分层架构 ,将多种协议结合(如 CAN/LIN 用于基础控制,Ethernet 用于高速数据),并通过网关实现协议转换。分层架构 :低速协议(LIN)→ 中速协议(CAN/CAN-FD)→ 高速协议(Ethernet)协同工作,通过网关实现协议转换。淘汰与替代 :MOST、FlexRay等协议可能逐步退出市场,而以太网和CAN-FD逐步成为主流。协议速率典型场景实时性成本优势劣势CAN1 Mbps(短距离)动力系统、底盘控制高中高可靠性,广泛兼容。原创 2025-06-10 08:46:00 · 1224 阅读 · 0 评论 -
从零开始基于Ubuntu 20搭建Gazebo地图仿真环境
虚拟机及系统的共享盘地址:【https://pan.baidu.com/s/1DxUpom3lj0xkr5_CwqdEVA?pwd=h7ta】原创 2025-06-06 14:16:33 · 503 阅读 · 0 评论 -
导航定位程序新车调试记录(SCUT)
【代码】导航定位程序新车调试记录(SCUT)原创 2025-05-29 12:05:46 · 140 阅读 · 0 评论 -
网络与信息安全标准说明介绍
国际标准(如ISO 27001):侧重管理体系框架,适用于全球化业务场景;国家标准(如GB/T 39786):聚焦国内法规合规,强制应用于政务、金融等领域;专项指南:针对新兴技术(如AI、物联网)提供细化安全措施。原创 2025-05-26 08:46:53 · 170 阅读 · 0 评论 -
从零实现wss通信示例(WebSocket SSL)
客户端和服务端代码框架跟上一篇一致,仅增加了ssl的证书部分用于加密通信,明文通信(ws协议)见上一篇。原创 2025-05-26 08:46:20 · 1044 阅读 · 0 评论 -
ZeroMQ Sockets介绍及应用示例
ZeroMQ Sockets提供了一种类标准套接字(socket-like)的 API,是消息导向的通信机制,基于 TCP/UDP 等传输层协议,但封装了底层细节(如连接管理、消息路由、缓冲区等),提供高级抽象。一对多广播,客户端可过滤主题,用于服务端广播消息,客户端订阅特定主题,适用于实时数据推送(如股票行情)严格同步,一问一答,用于客户端发送请求,服务端同步响应,适用于远程过程调用(RPC)单向任务分发,支持负载均衡,用于服务端分发任务,客户端并行处理,适用于分布式任务队列。原创 2025-05-22 14:57:27 · 1294 阅读 · 0 评论 -
websocket协议及通信示例
【代码】websocket协议及通信示例。原创 2025-05-21 10:00:19 · 245 阅读 · 0 评论 -
常用的应用层网络协议对比
协议通信模式加密支持传输层主要特点典型应用场景WSS全双工是(TLS/SSL)TCP安全的实时双向通信实时聊天、在线游戏全双工否TCP持久连接、低延迟协同编辑、实时通知HTTPS请求-响应是(TLS/SSL)TCP安全性强、兼容性好金融交易、Web APIHTTP请求-响应否TCP简单易用、广泛支持网页加载、表单提交MQTT发布/订阅可选(TLS)TCP轻量级、QoS 支持物联网、智能家居CoAP请求-响应/观察可选(DTLS)原创 2025-05-14 16:02:20 · 1189 阅读 · 0 评论 -
UR5机械臂仿真控制
【代码】UR5机械臂仿真控制。原创 2025-05-10 10:26:04 · 387 阅读 · 0 评论 -
[TxRxResult] There is no status packet! 及 Incorrect status packet! 问题修复
首次提示[TxRxResult] There is no status packet!使用waveshare的python程序ping。如果首次串多个舵机无法成功,先单个舵机尝试。使用飞特调试软件打开端口,看能否扫到。默认为:1000000。原创 2025-04-29 18:23:35 · 430 阅读 · 0 评论 -
常见操作系统特点及区别对比
关键区别总结原创 2025-04-02 23:04:04 · 676 阅读 · 0 评论 -
Ubuntu从源代码编译安装QT
【代码】Ubuntu从源代码编译安装QT。原创 2025-03-15 19:43:54 · 1056 阅读 · 0 评论