基于51单片机的三轴机械臂控制系统(PWM)

您所在的位置:网站首页 单片机con2 基于51单片机的三轴机械臂控制系统(PWM)

基于51单片机的三轴机械臂控制系统(PWM)

2024-07-13 03:05:59| 来源: 网络整理| 查看: 265

2021年参加校内电子竞赛所做的课题,发出来留作纪念,也希望能对大家有所帮助。

此项目获得了校电赛三等奖: )

1系统方案 1.1 控制系统的论证与选择

方案一:使用纯模拟电路控制,利用三极管的通断,一些模拟集成电路(电压比较器、RC延时电路、NE555芯片等)来实现对电机的延时控制,从而达到机械手的各方向移动,并且通过改变延时时间来决定机械手的移动幅度。

分析:纯模拟电路控制理论上可行,但在实际设计方面存在较大困难且在调试及改进方面存在不便,以及电路较不稳定,可能导致延时出现较大误差,可靠性欠佳。除此之外,一般电机达不到机械手控制的精确性要求。虽然换用舵机能达到所需效果,但用模拟电子技术设计PWM驱动电路复杂程度更高,稳定性更难以把握。最终舍弃使用纯模拟电路控制机械手的方案。

方案二:利用以单片机为核心的电路控制,通过单片机检测外部操作(按键开闭),利用单片机内部程序完成延时与高低电平信号的输出,从而控制各个舵机转动,进而达到机械手的各方向移动效果。

分析:单片机体积小、性能强大,功能引脚个数多,足以达到单个单片机控制多个电机的效果;延时功能可靠,足以满足机械手的精确控制。且单片机通过C语言编程形式达到控制,编写基本程序过程较为简单,后续调试与改进工作也相对方便。

综合上述两种方案,选择方案二。

1.2 单片机的论证与选择

当今单片机运用较广泛的是51、PIC、AVR三个系列。其中51系列是最基础且运用最广泛的一种,它从内部的硬件到软件有着一整套完成的位处理系统,处理对象不是字节而是位,能对一些特殊功能寄存器的特定位处理,且能进行位的逻辑运算,满足本次设计需求。且51系列单片机的指令系统、内部结构相对简单,易于上手,虽有运行速度相对较慢的缺点,但足以满足本次设计的指标。

因此,本次设计选择51系列单片机,其具体型号为STC89C516RD+。

2电路与程序设计 2.1系统总体框图 2.1.1系统总体框图

系统总体框图

2.2电路原理图 2.2.1 单片机及外围电路电路原理图

51单片机最小系统板原理图

舵机排针接口原理图

其中,D1对应单片机的P02端,D2对应单片机的P12端,D3对应单片机的P22端,D4对应单片机的P32端,分别根据P00、P01、P10、P11、P20、P21、P30端的信号变化发生信号变化。

按键原理图

        其中,K1、K2分别对应P00、P01,K3、K4分别对应P10、P11,K5、K6分别对应P20、P21,K7对应P30。

2.3单片机程序 2.2.1内部定时器

51单片机带有内部计时器,可以在编程中通过函数调用。不同系列的单片机带有的内部定时器数量和种类各不相同,但定时器0(Timer0)和定时器1(Timer1)是51系列单片机共有的定时器。

本设计以定时器0为基础产生PWM信号用以控制舵机,下面对定时器0的设置进行说明。

51单片机内部定时器状态由寄存器TCON(定时器/计数器控制寄存器)和TCOM(定时器/计数器工作模式寄存器)共同决定。

TCON寄存器

TMOD寄存器

        要使用定时器0,首先要对寄存器TMOD进行设置。本设计使用16位定时器的设置(M1=0,M0=1),需要对TMOD寄存器每位进行赋值。随后在TCON寄存器中启动计时功能(TR0=1)。

        51单片机的内部定时器具有一个特性,即会在定时器设定值TL0和TH0溢出时进入中断程序。本例中将进入定时器0(Timer0)对应的中断程序并在执行完毕后返回定时器。本设计中,我们来利用这种特性产生周期变化的电平(PWM信号),进而控制舵机。

        定时器设置如下,

定时器设定代码

        其中,EA=1,PT0=0,ET0=1为中断程序的前置控制命令。

3.2.2 PWM信号

        PWM技术是一种对模拟信号电平进行数字编码的方法,即通过控制固定周期内高电平的持续时间与周期长度的比值(占空比)来输出信号并控制设备。本设计中利用51单片机内部定时器形成PWM信号输出以调控舵机,其具体实现方法如下。

0.5ms

1ms

1.5ms

2ms

2.5ms

45°

90°

135°

180°

表格 SG90舵机转动角度与对应占空比(T=20ms)

        将定时器设置为0.25ms中断一次,设置计数变量counter初始值等于零,在中断程序中每次加一,在counter=80时将其归零一次,从而实现固定的变化周期。另定义可控变量compare,使得当counter小于等于compare时输出高电平,counter大于compare时输出低电平,从而输出一定的PWM信号。

本方法对应实现代码

        根据计算,本套方法对应SG90舵机精度应为22.5度。

3.3.3 程序设计

本设计意在通过按键控制机械手的前后、左右、上下、开合,表明需要在主函数中将按键端口与舵机端口的信号变化联系起来。

附录 附录1 主程序代码 #include #include "Timer.h" #include "Key.h" #include "Delay.h" sbit FB=P0^2;//forward&backward sbit LR=P1^2;//left&right sbit UD=P2^2;//up&down sbit CLAW=P3^2;//CLAW unsigned char counter=0,compare1=6,compare2=6,compare3=6,compare4=6; unsigned char con1=5,con2=5,con3=5,con4=0,Keynum=0; void main() {         Timer0_Init();         while(1)         {                  Keynum=key();                  if(Keynum==1)                  {                          con1++;                          if(con1>12){con1=12;}                  }                  if(Keynum==2)                  {                          con1--;                          if(con112){con2=12;}                  }                  if(Keynum==4)                  {                          con2--;                          if(con212){con3=12;}                  }                  if(Keynum==6)                  {                          con3--;                          if(con3


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭