该机器人开发板的用法和介绍以本文章为准。最新的代码github仓库为准:https://github.com/Allen953/Baize_ServoDriver_esp32 介绍 仓库总是存放最新代码,CSDN的代码可能存在滞后 ! 出于制作机器人的需要,设计了这块儿32路舵机驱动板,板子可以驱动从5~12V的pwm舵机,适应电压范围较宽,所以用起来会非常方便。 板载有
ESP32学习导航帖 介绍 用arduino为esp32开发程序非常方便,但是有时候需要测试程序的时候,arduino通常编译速度很慢,短则几十秒,长则两三分钟,要等好久。 所以,通常一个程序稳定之后,我们会把程序编译成固件,方便以后烧录使用。 固件由于已经是从源码编译成了二进制的可执行文件,因此再次上传同样的程序到esp32时,就不需要再编译了,直接可以将二进制可执行程序烧录到esp32
介绍 硬件平台 控制板:Baize_ServoDriver_esp32 舵机机械臂: 通过Baize_ServoDriver_esp32这块舵机驱动板,我们来驱动我们的机器人。 首先,我们通过串口来订阅我们的自定义话题消息。 具体的话题消息以及定义方式,可以参照下面的仓库 https://github.com/Allen953/Leizhuo_UnderWaterHexap
前言 原先写了一些ROS+arduino学习记录的帖子,发现每次找起来非常麻烦,所以做一个汇总帖,以后需要的话,找起来就方便了。 关于我用的开发板,一开始学习的时候,我用的开发板是arduino uno这类的,后来就用esp8266或者esp32的最小系统。 但是由于我经常喜欢做一些小型舵机机器人,同时Arduino+ROS本来就是制作机器人用的,所以每次我用ubuntu这边的ros主机仿真
导航在这里:白泽四足机器人导航贴 1.给esp8266模块烧录透传程序 这个程序烧录进esp8266模块之后,它就可以接收手机指令了。 //修改自:https://blog.csdn.net/wangke0809/article/details/70146378?ops_request_misc=%257B%2522request%255Fid%2522%253A%25221635661
前言 在ROS里 rqt_plot是ROS内置的一款用于绘图的可视化插件。它可以读取话题中发布的数据,将类型允许的数据绘制成为图像。在终端中运行以下节点可打开rqt_plot: rosrun rqt_plot rqt_plot 我们可以选定话题消息的数据,可视化的显示出来,效果如下图所示。 1.实体imu数据采集与显示 2.虚拟imu数据采集与显示 需要注意输入数据格式
目录 1.下载系统镜像 2.烧录ubuntu到sd卡 3.将内存卡插入rockpi 4b开机 4.将系统镜像复制到U盘并插到rockpi 4b板卡上 5.挂载U盘并烧录系统镜像到emmc 6.关机拔卡再开机 首先叙述一下步骤,我们首先下载一个ubuntu系统,然后将ubuntu系统镜像烧录到sd卡开机,这样rockpi 4b就进入了sd卡里面的ubuntu系统。然后我们将
目录 1.点动 2.长动 3.esp32的arduino端代码 4.效果展示 参考链接 这里的控制通过按键盘上的wsad达到小车前后左右的效果。 长动,顾名思义,就是按一下w,小车就开始前进,知道输入停止按键,小车就停止。 与之对应的是点动,就是按住w按键,小车开始前进,直到松开按键,小车就停止。 我们通过/command这个话题来传递命令消息,点动与长动只有上位机(pc)上的程
目录 1.配置arduino ide的esp8266硬件支持 2. 安装rosserial库 3. 重构ros_lib库 4.上传串口程序测试 5.上传wifi程序测试 我这里的esp8266采用的是arduino ide的开发方式,所以就基于arduino ide开发方式进行配置。 1.配置arduino ide的esp8266硬件支持 这一步主要是在arduino ide里面
前言 当我们用arduino ide基于esp32开发板进行程序开发的时候,arduino ide按照默认安装之后是无法直接给esp32下载程序的,也不支持esp32相关的库。这主要是默认的arduino ide没有esp32的硬件支持库。这时,我们就需要给arduino ide添加esp32的硬件支持包。 可以看到,在添加esp32硬件支持以前arduino的开发板选项是没有esp32的。
1.smimport载入机器人模型 首先,我们需要载入机器人模型,还是用从solidworks里面导出来的urdf模型即可。 然后将我们的urdf文件和meshs文件夹都添加到路径。 接着,我们用smimport命令载入机器人模型。 smimport("gou2/urdf/gou2.urdf") 然后等着它生成物理网格。 生成的物理网格包含了每个link和每个joint
前言 仿真摸索了一个月了,一直没有什么实质性进展。 用solidworks导出来的urdf模型不是在gazebo里面乱跳,就是自己反转,抖动,丢失零件。 最后发现solidworks导出urdf的插件本身有问题,我的模型里面的虚拟零件本来没有实体的,结果质量超过了1千克,比整个机架都重。所以最后先是通过solidworks的插件导出urdf文件,然后再重新手动调整。 下图是各种翻车图片。
问题1 载入模型的时候零件之间的关节断开 gazebo载入一个四足机器人模型的时候,发现它的有些关节断开了。,如下图这种,身子还在中间躺着,但是机器人的大腿已经不知道被谁砍了下来,右上角哪个红色大腿非常明显。 原因及解决办法: 这里由于我的joint标签里面的关节力矩是0,所以自然支撑不了身子,所以关节就断开了,将关节力矩修改大一些就没问题了。 问题2 在gazebo里面载入模型后发现零
前言: 这一篇文章里,我们做一个下面的机器人的仿真,既然是教程,那么就从最简单的开始,一步一步深入学习。 上一篇文章中,我们做了一个单自由度机器人的仿真,这里我们增加自由度,变成4个自由度,这样好像足式机器人的四条腿一样,可以通过四条腿将身体支撑起来,模拟一个简易的机器人。 1.编辑urdf文件 这个文件我们命名为gazebo_demo1.urdf.xacro。这里需要注意的几点主要是关节
为了方便入门和理解,我们这里建立一个最简单的单关节机器人,以此来入门机器人的gazebo仿真。 1.编辑urdf文件。 首先,我们在solidworks里面新建好机器人模型,然后导出urdf文件。 导出了urdf文件之后呢,我们就需要给urdf文件重新修改了, 首先直接修改文件名,在后面添加上.xacro后缀,改成了xacro文件。 里面有solidworks软件里面的插件(转urdf插件
问题: 运行的古月大神的mrobot例程,想要在gazebo种仿真mrobot,结果没发现模型,并产生下面的报错信息。 报错信息: 通过信息可以看出是python问题,是python版本的问题,这个东西应该用python2来运行,结果默认启动了python3. 解决办法: 将python版本换成python2,然后再次执行将模型加载进gazebo中的命令: alias python=pyt
问题: 按照书上的指引,启动gazebo仿真软件(当然记得运行roscore): rosrun gazebo_ros gazebo 结果我在这个页面等了三分钟一点儿动静也没有。 查阅资料,说明这是因为model库加载不正确导致的,gazebo软件开启的时候会自动从网络下载模型,因此这个过程比较漫长,主要是网络问题,开始解决。 方法一:断开电脑的网络 断开电脑网络,直接启动gazebo,这
启动gazebo的时候报错如下: 编辑config.yaml文件: sudo gedit ~/.ignition/fuel/config.yaml 修改文件: # url: https://api.ignitionfuel.org url: https://api.ignitionrobotics.org # 新增此行 如下图: 再次启动,无报错信息。
我们都知道,在ubuntu环境下,ros是可以自定义话题消息并发布的,但是怎样才能让arduino也可以用自定义话题消息呢? 这个在ros的官方网站上已经给定了方法,这里我详细记录一下流程。 1.在ubuntu上ros工作空间下的功能包自定义话题消息并编译。 这个网上资料很多,不再介绍。 2.重构ros_lib库 重构ros_lib库的流程在这里:https://blog.csdn.net/qql
ros_lib是arduino程序和ros连接的库文件,通过使用这些库文件和相关函数,可以在arduino上通过编程使得arduino硬件开ros节点程序,这样arduino硬件就可以与上位机通过话题进行通讯,从而把arduino从传感器上读取到的信息传输到firefly rk3328上位机上面去。 1.安装rosserial工具 sudo apt-get install ros-melodic-
在上一篇文章中,我们通过在终端用命令行发布一条ROS话题消息来通知下位机控制舵机运动。 在这一篇文章中,我们学习一下通过程序自动发布消息来控制舵机运动。 我们可以使用nanopi k2当作上位机来使用,这里暂时还是使用虚拟机,一切调试好之后可以一起部署到nanopi上面。 下位机还是一样的用arduino,arduino程序也没有变化。 1.首先,我们创建一个功能包并添加好依赖: 下方为示意
基于ros如果可以直接控制舵机的话,如果后面想做项目就会比较容易一些。 目前来说用ros控制舵机一般有两种方式: 一、直接通过舵机驱动板控制舵机。 二、通过向下位机通讯的方式控制舵机。 第一种方式一般适用于有舵机驱动板的情况,比如一些串口舵机和专用的舵机驱动器。 这些一般有固定的协议,根据协议控制,适用于有专用协议或者舵机数量较多的情况。 第二种方式通过下位机通讯,让下位机去控制舵机,需要用下位
对于helloworld程序来说,这个程序比较短而且简单,因此适合做一个详细的分析。 下面就是我们的helloworld初程序。 它主要负责发布一个名字叫chatter的话题,话题的消息是str_msg,二消息类型是String。 这个我们通过订阅消息就能看出来: (1):运行roscore (2):运行rosrun rosserial_python serial_node.py /dev/tt
1.首先,我们来安装arduino ide。 由于树莓派安装的Ubuntu mate 16.04版本,因此采用以下方法来安装arduino ide。 只需要一行代码下去: sudo apt-get install arduino 然后就可以在下面选项里面找的到了。 插上arduino uno之后发现端口那里还是空的,没有反应,怀疑是驱动的问题,所以赶紧安装CP2102驱动试试吧。 通过百度左右查
接上一篇文章,在这里,我们尝试运行例程来点亮一个led灯。 1.首先打开我们安装的例程中的ros_arduino_led例程,然后上传程序到arduino板子 2.然后,我们运行ros程序 (1)运行roscore:roscore (2)运行控制程序:rosrun rosserial_python serial_node.py /dev/ttyUSB0 这里提示:package 'rosseri
积分
粉丝
勋章
TA还没有专栏噢
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信