热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

嵌入式linux机械臂,一款基于ARM嵌入式的机械臂的设计与实现

吴家合张玉薇朱庆红蓝祝愿方敏摘要:机械臂在当今的医疗、工业等方面起着重要作用,为使机械臂更加适用、灵活、易于控制,基于ARM,

吴家合 张玉薇 朱庆红 蓝祝愿 方敏

d5324820fe90ded23e6e4a5e2dfe2f8f.png

7cd692f3c7b0b26ca58faa92cc38e1a3.png

摘要:机械臂在当今的医疗、工业等方面起着重要作用,为使机械臂更加适用、灵活、易于控制,基于ARM,通过依赖于ARM架构与ESP8266WiFi模块以及各种模块,实现机械臂的动作以及对物件的抓持。利用DsP算法使采集的信号转换为PWM控制信号,采用消抖算法,从而达到械臂在运行中的高稳定性。本机械臂可提升控制精度以及灵活性、机械臂与程序功能的融合。

关键词:机械臂;ARM;灵活性;控制

中图分类号:TP393 文献标识码:A 文章编号:1007-9416(2020)05-0137-02

机械臂是一种可以通过编译软件程序来完成的自动设备,它渐渐具备了有人的视觉以及判断能力。在工作的过程中,机械臂的控制的准确性和对环境的适应性,使其在各个领域都有着广阔的发展前景。特别是高级的机械臂,可以执行更加复杂的任务。机械臂是当今科研领域及工业领域的研究前沿和热点,兼有人行为意识和机械手的作业效能,因此在军事、医疗、空间、工业等领域有着广泛的应用前景。在国外,工业机器人的发展已经较为成熟,并且得到了非常广泛的应用,在国内,机械臂的设计还处于—个模仿的阶段。目前在机械臂的应用中,对于机械还的操控多为按键控制或者需要多个控制杆来控制一个机械臂的运动,其设计繁琐,操作复杂,给操作者使用带来很大不便。针对上述问题,侧重研究基于ARM的机械臂,旨在提升机械臂的传输信息实时性与控制精度以及灵活性,促进机械臂与程序功能的融合。

1系统功能分析

系统以ARM微型处理器架构为核心,以MG996R金属数字舵机、舵机驱动板PCA9685芯片、MMA7361三轴加速度传感器为主要外围元件,经A/D转换控制芯片采集相应的数字量信号,并编写控制算法程序调节输出PWM波的占空比,进而实现控制相应舵机运动的目的。通过CPU控制、三轴加速传感器对数据的采集以及消抖算法,使得机械臂的运行变得更加的稳定与协调,实现机械臂的灵活传动与自由制动。进而实现处理器架构与各模块之间功能。

2系统功能模块设计

在系统中,拟选择ARM作为主控单元,ARM可以使PwM信号的脉冲宽度实现微妙级的变化,从而提高舵机的转角精度。此舵机驱动板使用PCA9685芯片是16通道12bit,PWM舵机驱动,用两个引脚通过12C就可以驱动16个舵机。通过级联的方式最多级联62个驱动板,增强可扩展性,此外还解决驱动电路和控制电路隔离的问题。ARM再完成消抖控制算法,再将计算结果转化为PWM信号输出到舵机,由于单片机系统是一个数字系统,其控制信号的变化完全依靠硬件,所以受外界干扰较小,整个系统的工作性可靠,其原理框图如图1、图2所示。

系统利用触摸屏与串口通讯实现编译程序对机械臂的控制,实现操作者所输入编码的要求。再次根据机械臂控制系统的设计结构,以CPU为核心进行个模块问的总体设计,然后重点以协调为核心进行协控制器的功能和结构设计,分以下部分:舵机控制器模块、数据采集模块,并采用加速傳感器、仿真、已至加以实用。

3机械臂的软件设计

基于ARM的机械臂的软件测试,编译的主要环境是Windows7,选用的编程软件是KEIL5,通过输入一些关键的软件代码,通过串口烧录入硬件,实现我们的需要的功能。每一个模块都应该有一个属于自己模块的程序流程图,这样才能十分清晰的完成编译的目的,达到功能实现的效果。机械臂的主控制程序流程图详见图3所示。

4结语

基于ARM的机械臂综合多方的技术进行整合,依靠ESP8266 WiFi模块以及其他辅助模块,通过DSP算法使采集的信号转换为PWM控制信号,采用消抖算法,实现了机械臂的动作以及对物件的抓持机械臂夹持力度、通过算法保证工作的稳定性、提升控制精度以及灵活性、机械臂与程序功能的融合,以此达到其功能的实现。



推荐阅读
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 在2022年,随着信息化时代的发展,手机市场上出现了越来越多的机型选择。如何挑选一部适合自己的手机成为了许多人的困扰。本文提供了一些配置及性价比较高的手机推荐,并总结了选择手机时需要考虑的因素,如性能、屏幕素质、拍照水平、充电续航、颜值质感等。不同人的需求不同,因此在预算范围内找到适合自己的手机才是最重要的。通过本文的指南和技巧,希望能够帮助读者节省选购手机的时间。 ... [详细]
  • 统一知识图谱学习和建议:更好地理解用户偏好
    本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
author-avatar
儒志楼
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有