IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> esp32 绘图机械臂 pa_RobotArm -> 正文阅读

[嵌入式]esp32 绘图机械臂 pa_RobotArm

github :https://github.com/ActivePeter/paRobotArm

pa_RobotArm(pa机械臂

Intro(介绍

🎨 A robot arm project that can draw what you want

一个可以绘制你想绘制的东西的机械臂项目


image-20201204221358223

Run host on ipad, and draw on itself

在ipad上运行上位机并且在它上面画画

在这里插入图片描述

Draw a cat

画猫猫

image-20210621225456065

The host is written with vue ( The old version using QT)

上位机是用vue写的 (也有旧版本使用的QT+串口协议)

🎄github: ActivePeter/RobotArmHost: Host of my robotArm Project using vue and mqtt. The old version uses qt (github.com)

🎁demo: Vue-ImagePainter (hanbaoaaa.xyz)

draw path on canvas

在canvas 上绘制轨迹

image-20210621225712577

load picture and generate path

加载图片并生成路径

image-20210621225811766

💻Language(语言

c/c++ (mcu)

vue (host) (qt: old version)

?Model Conversion(模型换算

check the model describe file and code

查看describe 文件代码

./model_describe.md

./main/RobotArm/RobotArmApp/RobotArmModel.cpp

🛠Developement(开发

  1. get vscode, install the idf extension in vscode and set up basic esp32 development environment

    获取 vscode, 在vscode里安装idf插件 并设置好基础的esp32开发环境

  2. install the necessary extensions, the describe of extensions is in the Design part

    安装必要的vscode插件, 关于插件的描述在设计部分

Before coding, you should have a darm robot arm as that in picture.

Also you should know how to connect robot arm stepper - stepper driver(a4988) - mcu(esp32)

libHelperTree.json the gpio needed is describe in config tree file

在开始写代码之前, 你应该获得一个跟图里一样的dart机械臂

当然你也应该知道如何链接 机械臂步进电机 - 步进电机驱动(a4988) - mcu(esp32)

libHelperTree.json 关于gpio的描述可以参考这个文件,当然你也可以自行修改

  1. Get my source from github, use my Submodule Helper or native git commands to load submodules.

    从github获取我的源码, 使用我的 Submodule Helper原生 git 指令来加载子模块.

  2. Run build through vscode command pallete

    在vscode命令面板执行编译和下载

    image-20210621235744814

?Design(设计

  1. It is mainly written in c++ and well modularized.

    Abstracting the driver layer through my paMcuLib, which makes my MCU project can be easily transferred to other platformsAll the logic of the robot arm is put in class RobotArmApp, so this robot arm project is also easy to be transplanted

    主要使用c++编写,并且做了比较完备的模块化处理

    通过我的单片机通用库 paMcuLib,对驱动层进行了统一的抽象,这使得我的单片机项目可以轻易的被转移到其他平台上。

    所有跟机械臂相关的逻辑都放在 RobotArmApp 类里。通过创建对象来进行必要函数的调用,所以机械臂项目本身也很容易迁移平台

  2. uses my vscode extension MacroDefineHelper, I can set the platform related things easily(such as gpio)

    使用我的vscode插件 MacroDefineHelper, 我可以轻易的修改平台相关的宏定义参数并且生成对应头文件

    First I can set up describe.txt where I need platform related config macro.

    首先我可以在我需要特殊宏定义设置的模块文件夹内创建 describe.txt

    For example, here I need gpio config for robot arm. I created the describe.txt file to describe the header file and macros in it what I need.

    例如, 这里我需要给我的机械臂设置必要的gpio宏,那么我就像下图一样在文件里写入对应的描述,需要的头文件也可以自定义生成名称

    image-20210621233747067

    Then using my extension, a config tree will be automatically generated. And now I can easily set the macros.

    然后使用我的插件,自动生成一个配置树, 然后我可以轻易的修改宏对应的值

    image-20210621233312226

    Finally, using my extension, I can generate config header files to the pre-set path

    最终,使用我的插件,自动根据配置树生成对应的配置头文件

    image-20210621234239300

  3. Using my another extension Submodule Helper, I can load my paMcuLib modules as git submodules easily. Only need a json config file to describe the repositories and paths. Also I can easily switch used to load/remove them.

    使用我的另一个插件 Submodule Helper, 我可以轻松的加载和管理我的paMcuLib 通用库组件. 只需要一个 json 配置 文件来描述仓库和对应的路径。我也可以通过修改used轻易的切换是否使用这些子模块

    image-20210621234819944

📄Record

  • 2021/6/20

    almost finish. able to draw pictures.

    基本完成,可以绘制图片以及轨迹

2020/12/28 已经能够跟上位机通信来更新点序列了!

2020/12/6已经可以顺利的画纵向平面的五角星啦!

image-20201206065550082

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-17 12:06:30  更:2021-07-17 12:08:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 19:50:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码