- 博客(261)
- 收藏
- 关注
原创 基于 gmapping 算法建图与多点导航
本文介绍了机器人导航系统的操作流程:1)通过SSH登录导航模块,分别运行不带/带陀螺仪的导航启动命令;2)在另一个终端运行RViz可视化工具;3)在RViz中设置机器人初始位置和朝向;4)使用PublishPoint功能连续设置多个目标点,机器人将依次前往各个目标点。操作需注意正确设置初始朝向,每个新目标点前需重新点击PublishPoint。
2025-08-03 08:00:00
152
原创 机器人的运动控制(基于 app)
本文介绍了如何通过手机APP控制DashGo底盘驱动的操作步骤。首先通过SSH连接底盘(IP:192.168.31.200),运行带平滑加减速或陀螺仪的驱动启动文件。然后使用EAI开发的Android APP,在WiFi连接界面输入导航模块IP(192.168.31.200)建立连接。注意ROS系统与手机必须处于同一局域网。连接成功后,可通过APP界面实现方向操控功能。该方案目前仅支持Android系统。
2025-08-02 22:01:42
102
原创 机器人的运动控制(基于 topic)
本文介绍了两种底盘驱动的启动方式:1)不带陀螺仪的驱动,通过roslaunch dashgo_driver driver.launch启动,并用rostopic pub命令控制小车移动;2)带陀螺仪的驱动,使用driver_imu.launch启动。两种方式都通过发布Twist消息控制小车运动,注意运行后会持续移动直到手动停止。操作结果可通过终端显示观察。
2025-08-02 22:00:54
286
原创 机器人的运动控制(基于键盘)
本文介绍了Dashgo机器人运行环境的搭建和使用方法。对于老用户可沿用Ubuntu14.04+ROS Indigo环境,新用户则需安装Ubuntu16.04+ROS Kinetic。详细说明了串口权限设置、依赖包安装、工程包编译等步骤,并介绍了环境变量配置方法。第二部分讲解移动控制导航模块的使用,包括带/不带陀螺仪的底盘驱动启动方式,以及通过SSH连接实现键盘控制机器人的具体操作流程。所有操作均需在指定IP(192.168.31.200)下以eaibot用户身份执行。
2025-08-02 22:00:24
253
原创 rqt 的使用
本文介绍了ROS中日志系统的使用方法。首先需要安装turtlesim和相关工具包,然后通过rqt_console和rqt_logger_level工具来查看和修改日志级别。文章详细说明了如何启动这些工具、修改日志级别为Warn,并通过发布turtle运动命令观察日志输出变化。最后解释了ROS日志的五个级别(Fatal、Error、Warn、Info、Debug)及其优先级关系,指出设置某个级别会同时显示该级别及更高优先级的日志消息。
2025-08-02 21:59:34
231
原创 roslaunch 的使用
本文介绍了如何使用ROS的turtlesim程序包实现海龟模拟器的同步控制。主要内容包括:1)安装turtlesim程序包;2)解析turtlemimic.launch文件,该文件通过命名空间启动两个turtlesim节点,并使用mimic节点实现turtlesim2对turtlesim1的跟随;3)演示如何通过roslaunch启动文件,并发送速度指令使两个海龟同步运动。该示例展示了ROS中节点分组、话题重映射和同步控制的基本用法。
2025-08-02 21:58:53
113
原创 ROS 服务的请求与相应(基于 python)
本文介绍了ROS中服务(Service)的实现方法,包含服务端和客户端的Python代码实现。服务端(add_two_ints_server.py)通过rospy.Service()声明服务,使用回调函数handle_add_two_ints处理请求并返回两数之和;客户端(add_two_ints_client.py)通过rospy.ServiceProxy()调用服务,等待服务可用后发送请求参数并获取结果。文章最后演示了运行服务端和客户端进行4+5运算的测试过程,验证了服务功能的正确性。
2025-07-30 00:15:00
210
原创 创建Gazebo仿真环境
本文介绍了在ROS中搭建送餐机器人Gazebo仿真环境的过程。首先创建robot_navigation功能包并建立worlds文件夹,然后通过启动Gazebo软件、下载模型文件来构建仿真环境。详细说明了使用Building Editor编辑墙体、门窗等要素的方法,以及如何保存.world文件到指定目录。文章提供了两种获取模型的方式:官网下载和直接复制资源包,并给出了最终仿真环境的示例。通过该流程可以建立包含餐厅场景的Gazebo仿真平台,为后续机器人导航测试提供虚拟环境。
2025-07-30 00:00:00
687
原创 ROS 服务的请求与相应(基于 C++)
本文介绍了在ROS中创建和使用服务(Service)的基本流程。首先通过roscd和rossrv命令查看并验证了AddTwoInts服务定义,该服务接收两个int64参数并返回它们的和。然后详细讲解了服务端(add_two_ints_server.cpp)和客户端(add_two_ints_client.cpp)的实现代码,包括头文件引入、回调函数定义、服务发布与调用等关键环节。最后通过roscore启动ROS主节点,分别运行服务端和客户端进行测试,验证了服务调用的正确性。整个过程展示了ROS中服务创建、实
2025-07-29 08:30:00
344
原创 ROS 消息的发送与接收(基于 python)
本文介绍了ROS中发布-订阅模式的Python实现方法。首先详细讲解了发布器节点talker.py的代码结构,包括初始化节点、创建发布者、设置发布频率及消息发布逻辑。接着说明了订阅器节点listener.py的实现,重点介绍了消息回调函数和节点初始化设置。最后给出了测试步骤:先启动roscore,再分别运行发布器和订阅器节点,验证了节点间通过"chatter"主题成功进行消息通信。代码中使用了std_msgs/String消息类型,并实现了每秒10次的发布频率控制。文章还解释了匿名节点、
2025-07-29 08:15:00
885
原创 安装Apache Tomcat服务器
本文介绍了Apache Tomcat服务器的安装配置过程。Tomcat是Apache基金会开发的免费开源轻量级Web应用服务器,适合中小型系统。安装步骤包括解压安装包、配置环境变量、设置manager-gui管理用户(用户名/密码均为tomcat)、修改context.xml文件以及创建测试页面。通过访问http://master1:8080可进入管理界面,测试页面http://master1/test可验证安装结果。配置完成后,Tomcat即可用于开发和调试JSP程序。
2025-07-29 08:00:00
288
原创 搭建水稻疾病知识图谱
本文介绍了使用Python和Neo4j构建水稻疾病知识图谱的过程。主要内容包括:1)开发准备工作,包括创建Python文件和启动Neo4j服务;2)通过neo4j-driver库将水稻疾病名称和症状实体词写入Neo4j数据库;3)使用MERGE语句创建"Disease"和"Symptom"节点,并建立它们之间的"dis_to_sym"关系;4)定义neo4j_load_data()方法加载疾病数据,neo4j_input()方法写入数据并建立关系。
2025-07-29 00:15:00
344
原创 ROS 消息的发送与接收(基于 C++)
本文介绍了ROS中发布器和订阅器的实现方法。发布器节点(talker.cpp)通过ros::Publisher以10Hz频率在"chatter"话题上发布包含计数器的字符串消息;订阅器节点(listener.cpp)通过ros::Subscriber订阅该话题,并在收到消息时调用回调函数打印内容。代码详细说明了ROS节点的初始化、消息发布/订阅机制、循环频率控制等核心功能。测试时需先启动roscore,然后分别运行发布器和订阅器,可观察到消息的正常发送和接收。该示例展示了ROS节点间基于
2025-07-28 23:50:43
985
原创 安装MySQL数据库
MySQL是一个流行的关系型数据库管理系统,常用于存储应用元数据信息。本文介绍了在Linux系统上安装MySQL 5.7的过程:首先卸载旧版本(包括mariadb依赖),然后通过rpm命令离线安装MySQL软件包,并详细说明了配置步骤(启动服务、修改字符集为UTF-8、首次登录修改密码等)。针对系统重启后可能出现的pid文件创建失败问题,提供了解决方案——修改/etc/init.d/mysqld启动脚本,自动创建/var/run/mysqld目录。整个过程涵盖了从软件安装到常见问题处理的完整指导。
2025-07-28 23:40:50
392
原创 安装并配置Hadoop HA集群环境
本文详细介绍了Hadoop 2.9.2高可用(HA)集群的搭建过程。首先说明了Hadoop作为分布式系统基础架构的特点,然后分步骤指导了HA集群的配置与部署,包括环境变量设置、六个核心配置文件的修改(core-site.xml、hdfs-site.xml等)、节点间配置文件同步等关键技术环节。重点描述了HDFS HA和YARN HA的配置细节,详细记录了集群启动流程,包括ZKFC格式化、JournalNode启动、NameNode主备同步等关键操作。最后通过实际测试验证了HA功能,展示了主节点故障时自动切换
2025-07-28 23:39:39
1142
原创 Zookeeper集群安装
本文介绍了Zookeeper分布式协调服务的安装配置过程。主要内容包括:在slave1、slave2、slave3三个节点上安装Zookeeper-3.4.5版本,配置环境变量、修改配置文件zoo.cfg(设置集群节点、端口等参数)、创建数据/日志目录、配置myid文件(确保各节点id唯一)等步骤。通过scp命令将配置同步到其他节点后,启动Zookeeper集群,并使用zkServer.sh status命令验证各节点状态(Leader/Follower),确保集群正常运行。该配置为Hadoop高可用(HA
2025-07-28 23:38:52
1009
原创 配置SSH免密码连接
Hadoop集群配置SSH免密登录指南 本文介绍了在Hadoop分布式集群中配置SSH免密登录的方法。主要包括以下步骤:1)检查并确保各节点SSH服务已安装;2)在所有节点生成RSA密钥对;3)在master节点合并所有公钥到authorized_keys文件;4)将合并后的密钥文件分发到所有节点;5)测试各节点间的SSH连接。通过此配置可实现集群节点间的无密码访问,方便Hadoop集群操作。注意首次连接仍需输入密码,后续即可实现免密登录。
2025-07-28 23:38:18
541
原创 IDEA与VSCode代码托管操作
本文介绍了使用IDEA和VSCode进行代码托管的基本操作。在IDEA中,通过设置Git路径、提交修改文件并推送至远程仓库实现代码上传;通过Pull操作从远程仓库获取更新。VSCode的操作类似,通过源代码管理工具暂存修改、提交至本地仓库后推送,并使用拉取功能同步远程变更。两种工具均展示了完整的代码推送和拉取流程,帮助开发者实现本地与远程仓库的同步。
2025-07-28 23:37:21
274
原创 CodeArts项目工程创建
本文介绍了DevOps概念及其核心理念,重点阐述了华为云CodeArts一站式DevOps平台的特点和功能。DevOps强调开发、运维和质量保障部门的协作,通过持续改进提高软件交付效率。CodeArts作为云端DevOps工具链,提供项目管理、配置管理、测试部署等服务,实现研发过程可视化、可控化和可度量化。文章还简要说明了CodeArts的项目创建流程和成员管理功能,展示了该平台如何解决研发痛点、提升团队协作效率。
2025-07-28 23:36:18
283
原创 labelImg介绍、安装及使用
LabelImg是一款用于图像标注的开源工具,主要用于构建深度学习训练数据集。文章详细介绍了LabelImg的安装步骤(通过git或离线包),以及软件界面功能和使用方法(包括标注框绘制、标签输入和文件保存)。同时阐述了目标检测标注的六大规范:贴边规则、重叠规则、独立规则、不框规则、边界检查和小目标规则。最后以车辆品牌标注为例,演示了具体标注流程,包括图片加载、车辆框选、品牌标签输入等操作,并列出50种待标注的车辆子品牌列表。
2025-07-28 23:34:45
972
原创 Django框架学习
Django是一个基于Python的开源Web框架,采用MVC/MTV架构模式,支持快速开发和高效部署。文章介绍了Django的特点和优势,包括低耦合、高重用性等,并对比了MVC(模型-视图-控制器)和MTV(模型-模板-视图)两种设计模式的工作原理。随后通过实践演示如何在Django中创建HelloWorld项目,包括项目结构解析、服务器启动以及视图和URL配置的具体实现步骤,最终成功在浏览器中输出"Hello World!"。整个流程展示了Django简洁高效的开发特性。
2025-07-28 00:00:00
532
原创 了解UIE模型
UIE(Universal Information Extraction):Yaojie Lu等人在ACL-2022中提出了通用信息抽取统一框架UIE。该框架实现了实体抽取、关系抽取、事件抽取、情感分析等任务的统一建模,并使得不同任务间具备良好的迁移和泛化能力。为了方便大家使用UIE的强大能力,PaddleNLP借鉴该论文的方法,基于ERNIE 3.0知识增强预训练模型,训练并开源了首个中文通用信息抽取模型UIE。
2025-07-27 08:00:00
880
原创 安装Neo4j图数据库
本文介绍了Neo4j图数据库的安装和使用方法。主要内容包括:1)安装Java环境并配置Neo4j;2)使用Cypher语言进行图数据库操作,包括创建节点(Person、Location)、建立关系(FRIENDS、BORN_IN)及查询、修改和删除操作;3)通过Python代码操作Neo4j数据库,实现节点创建和关系建立。文章还简要介绍了Neo4j的基本概念(节点、关系、标签、属性)和特性,展示了如何通过可视化界面和编程两种方式管理图数据。最后提供了关闭Neo4j服务的命令。
2025-07-26 23:24:40
812
原创 基于GLM-4的对话增强
本文介绍了大语言模型(LLM)的基本概念及其应用,重点讲解了智谱AI的GLM-4大模型。文章详细说明了如何注册智谱AI平台并获取API Key,通过Python代码演示了GLM-4-Flash API的同步和流式调用方法,包括参数设置和响应处理。此外,还介绍了Prompt工程技巧,如角色扮演、思维链提示等优化方法,帮助开发者获取更精准的模型响应。最后,文章指导如何将API调用封装为函数以便集成到对话系统中。这些内容为开发者使用GLM-4大模型提供了实用指南。
2025-07-26 23:23:40
960
原创 使用MapReduce处理NCDC气象数据
实验摘要 本实验演示了如何下载和处理NCDC气象数据,并使用Hadoop进行分布式计算。主要步骤包括: 从指定URL下载气象数据集(2005-2014年),解压至本地目录 将原始数据上传至HDFS文件系统,创建/GSOD和/GSOD_ALL目录 编写MapReduce程序处理数据: 使用generate_input_list.sh生成待处理文件列表 通过load_ncdc_map.sh脚本解压、合并年度数据 采用Streaming接口运行map-only作业 分析处理后的数据,提取每月最低气温: 编写Map
2025-07-26 23:22:15
564
原创 基于MapReduce实现好友推荐
摘要:本文介绍了一个基于MapReduce的社交好友推荐算法实现。通过分析用户好友关系数据,计算潜在好友之间的共同好友数,为每个用户推荐非好友但共同好友较多的用户。算法分为两个阶段:第一阶段生成潜在好友对及其共同好友数,第二阶段按共同好友数排序生成推荐列表。详细说明了MapReduce程序的实现过程,包括自定义数据类型、Mapper、Combiner和Reducer的设计,以及如何通过二次排序优化推荐结果。实验数据采用双向好友关系记录,最终输出包含用户ID、推荐好友ID及共同好友数的三字段结果表。
2025-07-26 23:21:12
577
原创 搭建基于YARN的Spark实验开发环境
摘要:本文详细介绍了在CentOS7.3环境下搭建Hadoop-Spark集群的实验步骤。首先配置3节点集群环境(1个master和2个slave节点),包括设置免密SSH访问、关闭防火墙等基础环境。然后依次安装配置JDK、Scala、Python(Anaconda)等依赖环境。重点讲解了Hadoop全分布式模式的安装部署过程,包括核心配置文件修改、环境变量设置及集群启动方式。最后详细说明了Spark的安装配置步骤,包括环境变量设置、日志级别调整及Python支持配置。实验采用root用户操作,所有软件均安
2025-07-26 23:19:39
747
原创 uC/OS多任务实现
本文介绍了uC/OS-III操作系统中任务创建函数OSTaskCreate()的使用方法及其在多任务实现中的应用。OSTaskCreate()通过TCB任务控制块管理任务属性,包括堆栈指针、优先级等关键参数。文章详细解析了函数参数的功能,如任务优先级(0-255数值越小优先级越高)、堆栈配置及错误处理机制,并给出了函数调用示例。同时,通过一个三任务工程实例(初始化任务+3个应用任务)演示了多任务系统的搭建流程:从OSInit()内核初始化、OSTaskCreate()任务创建到OSStart()启动任务调度
2025-07-15 09:45:00
793
原创 使用HMC5883L传感器获取方向
HMC5883L是一款三轴磁阻传感器,用于测量磁感应强度,具有12位ADC和±8高斯测量范围。它集成了放大器、自动消磁等电路,精度达1°-2°,采用I2C接口和3x3mm封装,适合可穿戴设备。本文介绍了其驱动实现,包括初始化寄存器、读取三轴数据以及通过atan2函数计算方位角的软件方法。关键代码展示了I2C通信、数据合成和角度转换(0-360°)的实现过程,适用于简易指南针设计。
2025-07-14 21:58:04
520
原创 使用MPU6050传感器获取加速度
本文介绍了基于MPU6050传感器的智能手环姿态检测系统设计。MPU6050是一款六轴传感器,可同时检测三轴加速度、三轴角速度和温度数据,其内置DMP模块可实现200Hz的姿态解算频率。文章详细说明了MPU6050的引脚功能、特性参数及与STM32的硬件连接方式,包括电源、I2C通信等接口配置。软件部分重点阐述了驱动移植、硬件初始化流程,以及加速度、角速度和温度数据的获取方法,并通过LCD实时显示原始数据。该系统为智能手环提供了高效可靠的运动姿态检测方案,后续可通过数据换算获得更精确的姿态信息。
2025-07-14 21:56:59
1449
原创 µC/OS-III系统
μC/OS-III是一款可裁剪、可固化的抢占式实时操作系统内核,具有任务数目无限制、优先级数量不受限等特性,支持信号量、消息队列、软件定时器等内核对象。该系统采用模块化设计,包含配置文件、应用任务、内核服务等分层结构,通过任务控制块(TCB)管理任务属性。μC/OS-III相比前代产品新增了时间片轮转调度、任务级时间节拍处理等功能,并优化了中断响应时间。其任务分为休眠态、就绪态等五种状态,支持用户任务和系统任务(如空闲任务、时基任务)。该系统广泛应用于工业控制、汽车电子等领域,具有运行时配置、堆栈监测、死锁
2025-07-13 08:00:00
884
原创 文本向量化
本文介绍了Embedding模型的配置与使用流程。首先说明如何配置模型参数,包括选择bge系列中文Embedding模型、设置运行设备和模型路径。然后详细描述了模型的初始化过程,包括线程安全的加载机制、缓存池管理以及异步处理实现。在文本向量化部分,介绍了同步/异步接口设计、API端点实现以及文档处理流程,重点讲解了归一化处理和适配器类的功能。整个系统设计考虑了多线程安全、缓存优化和异步处理需求,为文本检索、分类等任务提供了高效的向量化解决方案。
2025-07-13 01:00:00
472
原创 文本的分割
本文介绍了文本分割器的设计与实现。首先定义分割器参数,包括ZH_TITLE_ENHANCE变量和tokenizer配置。核心模块实现了递归文本分割功能,通过正则表达式从末尾分割文本,并处理分割符保留问题。中文递归分割器ChineseRecursiveTextSplitter继承基类,采用默认分隔符列表,支持递归分割和合并过小文本块。中文标题增强功能通过非字母比例、标点结尾等规则识别标题,标记为"cn_Title",并在非标题文档前添加标题关联信息。整个系统实现了中文文本的高效分割和标题增
2025-07-13 00:45:00
747
原创 文件的加载
本文介绍了四种基于RapidOCR的文档加载器实现:1. Word文件加载器(RapidOCRDocLoader)通过解析文档块(段落/表格)并识别图片文字;2. 图片加载器(RapidOCRLoader)直接识别图片文字;3. PDF加载器(RapidOCRPDFLoader)提取文本并处理旋转图片的OCR识别;4. PPT加载器(RapidOCRPPTLoader)递归提取文本框、图片和表格内容。所有加载器均继承UnstructuredFileLoader,在提取文本后调用partition_text进
2025-07-13 00:30:00
567
原创 Langchain入门
LangChain框架是一个用于构建语言大模型应用程序的开发框架,提供六大核心模块:1. Model I/O(模型输入输出):管理与LLM的交互,包括提示词模板和响应处理。2. Chains(链式调用):将多个LLM或组件串联,实现复杂任务流程。3. Callbacks(回调系统):用于日志记录、监控等功能的回调机制。4. Memory(记忆模块):存储和调用历史对话信息,支持多种记忆方式。5. Retrieval(检索模块):实现知识库检索,支持RAG(检索增强生成)流程。6. Agents(代理系统):
2025-07-13 00:15:00
659
原创 模型部署框架FastChat
提供SOTA模型的训练和评估代码;提供分布式多模型部署框架,具有Web界面和与OpenAI 兼容的RESTful API。FastChat服务的架构如下图所示:FastChat项目的地址如下:https://github.com/lm-sys/FastChat/tree/main提供SOTA模型的训练和评估代码;提供分布式多模型部署框架,具有Web界面和与OpenAI 兼容的RESTful API。
2025-07-13 00:00:00
752
原创 基于LoRA微调ChatGLM3
摘要:本文详细介绍了使用LoRA方法微调ChatGLM3-6B模型的过程。主要内容包括:1) 配置LoRA参数(如秩r=8、alpha=32、dropout=0.1);2) 2小时的微调训练及模型推理测试;3) 将LoRA适配器与基座模型合并;4) 构建Web交互界面;5) 对比P-Tuning-V2和LoRA微调效果,证明LoRA在中医问答场景表现更优。实验表明,LoRA微调后的模型能生成更专业的中医诊疗建议,参数效率更高(仅调整少量参数),适合资源受限的垂直领域应用。
2025-07-12 19:45:04
969
原创 基于P-tuning-V2微调ChatGLM3
本文介绍了基于P-tuning_V2方法微调ChatGLM3-6B模型的全流程。首先详细说明了配置文件参数,包括数据集路径、训练参数和生成参数设置。然后阐述了模型微调的实现步骤:加载配置、处理数据、创建训练器并保存模型。接着展示了如何使用微调后的模型进行推理,并通过对比测试证明了微调效果。最后介绍了基于Streamlit构建的WebUI界面,以直观方式展示模型性能。整个流程涵盖了从参数配置、模型训练到应用部署的关键环节,为类似任务提供了完整参考方案。
2025-07-12 19:44:10
369
原创 了解参数高效微调方法
大模型微调(Fine-tuning)是指基于预训练模型,通过特定领域的高质量数据或人类反馈进行训练,以增强或赋予模型专业能力的技术。其必要性在于:全量训练成本高昂(如GPT-3单次训练需140万美元),且通用模型难以满足专业领域需求。微调后的模型在问答、文本生成、金融分析、医疗咨询等场景表现更优。 微调流程包括模型选取、任务定义、数据准备、策略选择等步骤,形成系统化工程。主要技术包括: 指令微调:使用自然语言数据增强指令遵循能力; 参数高效微调:如适配器微调(插入小型神经网络)、前缀微调(添加可训练前缀参数
2025-07-12 19:43:08
401
【计算机视觉】基于DDPM的CIFAR-10图像生成实验:扩散模型在中小型图像数据集上的应用与优化
2025-08-02
【计算机科学】基于PyTorch的手工复现Transformer模型:自然语言处理领域机器翻译任务的实现与评估
2025-08-02
【机器学习领域】基于sklearn的鸢尾花数据集分类实验:数据预处理、模型训练与评估全流程解析了文档的主要内容
2025-08-02
基于Hadoop的MapReduce分布式气象数据分析处理技术及应用
2025-02-07
Hadoop集群构建详解:全分布式模式环境搭建、配置与管理
2025-02-07
搭建基于YARN的Spark大数据集群与开发环境实践指南
2025-02-07
Linux操作系统基础操作与文本处理实验:从入门到实践
2025-02-07
1.试选用CD4532、74HC4511、七段共阴极显示器等器件,设计8线-3线译码器和译码显示电路,要求将开关(十进制0-7)
2024-10-23
设计一个简易CPU 功能的数字电路,实验至少要求采用4个74HC/HCT194作为 4 个存储单元
2023-12-10
关于#网络安全#的问题:网络安全方向怎么样
2023-12-11
怎样学习好C语言呢?
2022-10-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人