六足仿生机器人实验室开放项目结项报告.doc

上传人:飞**** 文档编号:48673845 上传时间:2022-10-06 格式:DOC 页数:35 大小:791.50KB
返回 下载 相关 举报
六足仿生机器人实验室开放项目结项报告.doc_第1页
第1页 / 共35页
六足仿生机器人实验室开放项目结项报告.doc_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《六足仿生机器人实验室开放项目结项报告.doc》由会员分享,可在线阅读,更多相关《六足仿生机器人实验室开放项目结项报告.doc(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、淮北师范大学实验室开放项目总结报告基于 STC12C5A60S2 单片机的六足机器人学院:物理与电子信息学院负 责 人:韩润小组成员:史浩东史良东陆家双张莹莹康强强指导老师:方振国一一、项目重述、项目重述1.1 项目名称:智能六足机器人项目名称:智能六足机器人1.2 项目背景及意义:项目背景及意义:背景背景:在社会迅速发展的今天,单片机的的运用已经渗透到我们生活的每个角落,也似乎很难找到哪个领域没有单片机的足迹。智能仪表、医疗器械,导弹的导航装置,智能监控、通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 IC 卡,汽车的安全保障系统,动控制领域的机器人,数码像机、电视机

2、、全自动洗衣机的控制,电话机以及程控玩具、电子宠物等等,这些都离不开单片机。意义意义:单片机的学习、开发与应用将对于现代社会的发展,经济的繁荣,和提高满足人类日益增长的物质文化需求有着至关重要的作用。也成就了一批又一智能化控制的工程师和科学家。科技越发达,智能化的东西就越多。学习单片机是社会发展的必然需求,也是我们现代高级技工所必须要掌握的技能。1.3 项目内容:项目内容:以 51 单片机为控制器的核心,利用单片机内部中断产生 PWM 波控制舵机。利用开环函数组成的动作组使六足做仿生动作,制作出了动作灵活、价格低廉以及模块化结构的六足机器人。该机器人能够严格按三角步态进行行走,实现诸如直线、转

3、弯、躲避障碍物和追踪物体等行走功能。二、方案简介二、方案简介本项目可细分为控制部分、机械部分、恒流源部分、超声波检测部分。控制部分采用 STC12C5A60S2 单片机为核心处理器。通过 PWM 波使舵机转动,机械部分采取合理的机械构造,实现机器人在行走的情况下的平稳。恒流源部分采取 LM7805 稳压芯片为单片机和舵机供电,由于舵机在运转的过程中会有较大的电流波动。因此采用恒流电路进行恒流。超声波壁障采用超声波遇故障反射的原理。实现对物体识别和规避。三、设计过程三、设计过程3.13.1 STC89C51STC89C51 功能介绍:功能介绍:89C51 是一种带 4K 字节闪烁可编程可擦除只读

4、存储器(FPEROMFlashProgrammable and Erasable Read Only Memory)的低电压、高性能 CMOS8 位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 89C51 是一种高效微控制器,89C2051 是它的一种精简版本。89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚

5、可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据地址的低八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH编程和校验时,P1 口作为低八位地址接收。P2 口:P2 口为一个内部上拉电阻的 8 位双

6、向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL门电流。当 P3 口

7、写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2/INT0(外部中断 0)P3.3/INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个

8、机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时,ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程

9、序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。EA/VPP:当/EA 保 持 低 电 平 时,则 在 此 期 间 为 外 部 程 序 存 储 器(0000H-FFFFH),不管是否有内部程序存储器读取外部 ROM 数据。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,单片机读取内部程序存储器。(扩展有外部 ROM 时读取完内部 ROM 后自动读取外部 ROM)。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。X

10、TAL2:来自反向振荡器的输出。3.23.2 开关电路及恒流源部分:开关电路及恒流源部分:开关三极管电路利用三极管工作于截止区和饱和区,相当于电路的切断和导通的特性,被广泛应用于各种开关电路中,如常用的开关电源电路、驱动电路、高频振荡电路、模数转换电路、脉冲电路及输出电路等。本次设计用两个 NPN型小功率三极管 s8050 构成三极管开关电路,能够有效地隔绝恒流源电路对单片机芯片的损害。LM317 是应用最为广泛的电源集成电路之一,它不仅具有固定式三端稳压电路的最简单形式,又具备输出电压可调的特点。此外,还具有调压范围宽、稳压性能好、噪声低、纹波抑制比高等优点。lm317 是可调节 3 端正电

11、压稳压器,在输出电压范围 1.2 伏到 37 伏时能够提供超过 1.5 安的电流,此稳压器非常易于使用。构成的电路如下:3.33.3 舵机行走步态设计舵机行走步态设计(1)三角步态。三角步态也称交替三角步态,是“六足纲”昆虫最常使用的一种步态,也被誉为最快速有效的静态稳定步态。大部分六足机器人都是从仿生学的角度出发使用这一步态。昆虫三角步态的移动模式较简单,非常适合步行架构的机器人的直线行走,行进速度也比较快。本论文也采用这种步态实现机器人的直线行走,该步态的具体方式将会在后文中具体给出。(2)跟导步态。通常,三角步态的研究通常都局限在平坦地面,并且假设对于不平地面也是合理的。然而随着 197

12、4 年 Sun 首先提出了跟导步态的概念,并于 1983 年由 Tsai 成功地把这种步态应用于俄亥俄州立大学的电动六足机器人中,这些为跟导步态的研究和发展,为提高机器人在不平地面上的行走速度奠定了基础。对于六足机器人来说,跟导步态的重点是选择前两足下一步的落点,而一对中足和一对后足的下一步落点由当前前足和中足的立足点决定。跟导步态每次只需要选择前两足的立足点,因而具有控制简单,稳定性较好,越沟能力强等特点,所以特别适合多足步行机在不平地面行走时采用。(3)交替步态。与跟导步态类似,为了充分发挥六足机器人相对于轮式机器人在复杂地形的行走优势,交替步态成为新兴的六足机器人研究的重点。这种单腿交替

13、行走步态,也被称为五角步态。在交替步态中,各腿的运动可分为抬升和前进两个部分。当某腿的相邻各腿均已触地时,该腿开始运动,并给其相邻各腿发出信号。同样,在该腿触地时,也会给相邻各腿发出触地信号。这样,一旦整个六足系统进入行走状态,这种顺次的步态运行状态就可以一直维持下去。由于各腿等待其相邻腿触地的时间取决于其相邻腿的动作及其触地位置,因而,对于崎岖不平的地面而言,这种步态本身是不可预测的。然而,对于理想的平整地面而言,各腿的运动周期应该是一致的,故而此时的交替步态实质上等同于三角步态,这己在实验中得到证实根据实验及研发,采用了三角步态。六足仿生机器人采用六足昆虫的行走步态,步行时把 6 条足分为

14、两组,以一边的前足后足与另一边的中足为一组,形成一个三角架支撑机体。因此在同一时间,只有一组的 3 条足起支撑作用,前足用爪固定物体后拉动虫体前进,中足用以支撑并举起所属一边的身体,后足则推动机体前进,同时使机体转向。行走时机体向前,并稍向外转,3 条足同时行动,然后再与另一组 3 条足交替进行。直线行走时的步态如图 3.2 所示。机器人开始运动时左侧的 2 号腿和右侧的 4、6 号腿抬起,准备向前摆动,另外 3 条腿 1、3、5 处于支撑状态,支撑机器人本体确保机器人的原有重心位置处于 3 条支撑腿所构成的三角形内,使机器人处于稳定状态不至于摔倒,见图 3.2(a),摆动腿 2、4、6 向前

15、跨步,见图 3.2(b),支撑腿 1、3、5 一面支撑机器人本体,一面在小型直流驱动电机和皮带传动机构的作用下驱动机器人本体,使机器人机体向前运动一个半步长 S,见图 3.2(c);在机器人机体移动到位时,摆动腿 2、4、6 立即放下,呈支撑态。使机器人的重心位置处于 2、4、6 三条支撑腿所构成的三角形稳定区内,原来的支撑腿 1、3、5 已抬起并准备向前跨步,见图 3.2(d)摆动腿 1、3、5 向前跨步,见图 3.2(e),支撑腿 2、4、6 此时一面支撑机器人本体,一面驱动机器人机体使机器人机体向前运动一个步长 S,见图 3.2(f),如此不断重复步态 a-b-c-d-e-f-a,循环往

16、复实现机器人不断向前运动。图 3.23.4 总原理图:总原理图:注:电路模块较多,故较多采用网络标号的方法来实现电路图的物理连接。3.5 PCBPCB 电路图:电路图:0123123412551234212121543210211212123432132132132132132132132132132132132132132132132132132112345678910111213141516171819202122232425262728293031323334353637383940212112122121987654321211212四、项目总结四、项目总结本次项目设计中,首先对六足机

17、器人的机械构造进行了深入的讨论 最终确定了三角步态的六足结构,采用每脚三个舵机来模仿蜘蛛的足关节。而后在舵机的选取方面采用了目前性价比较高的 MG996 舵机及全铝合金制的机身和关节等。其次,前期采用 STC89C51 单片机模拟驱动舵机,由于 STC89C52 单片机的IO 口驱动电流无法驱动 MG996 舵机,因此采用了 STC12C5A60S2 单片机驱动。舵机的信号是由单片机提供,其工作电压是外部供电。有效的减轻单片机的负载且提高单片机运行的稳定性。机械结构也是六足机器人重要的考虑部分,机械构造的稳定是完成后续动作的基础,机械的缓震方面也是要做到细致。保证机械的流畅运行。五、附录五、附

18、录全部程序:#include#includeservo.h#includesbit led=P42;uchar time0_count,led_count;/最小值为 0最大值 190 度到 190 度/*函数申明*/void Delay1ms(void);/12.000MHzvoid Delay_ms(unsigned int x);void time_configuration();/*步态程序*/void Gesture0_ShenZhan(void);/机体伸展void Gesture1_ZhanLi(void);/机体站立姿态void Gesture2_ShouSuo(void);/

19、机体收缩void Gesture3_JinShi(void);/进食姿态void Gesture4_SanZuZhanLi(void);void Gesture5_SiZuZhanLi(void);void Left_Gait(void);/左转动作void Right_Gait(uint time);/右转动作void Forword_Gait(uint time);/前进动作void Back_Gait(void);/后退动作/*主函数*/void main()/*所有 IO 口设置为推挽输出*/P1M1=0 x00;P1M0=0 xff;P0M1=0 x00;P0M0=0 xff;P2M

20、1=0 x00;P2M0=0 x81;time_configuration();Gesture0_ShenZhan();Delay_ms(500);Delay_ms(500);while(1)Forword_Gait(200);/*/4 足站立/*/定稿void Gesture5_SiZuZhanLi(void)Angle_Servo_1=7;/左前Angle_Servo_2=0;Angle_Servo_4=4;/左中Angle_Servo_5=12;Angle_Servo_7=7;/左后Angle_Servo_8=8;Angle_Servo_16=13;/右前Angle_Servo_17=0

21、;Angle_Servo_13=16;/右中Angle_Servo_14=12;Angle_Servo_10=13;/右后Angle_Servo_11=12;Delay_ms(500);Delay_ms(500);Angle_Servo_3=8;Angle_Servo_6=8;Angle_Servo_9=12;Angle_Servo_18=8;Angle_Servo_15=8;Angle_Servo_12=8;/*/3 足站立/*/定稿void Gesture4_SanZuZhanLi(void)Angle_Servo_1=10;/左前Angle_Servo_2=0;Angle_Servo_3

22、=0;Angle_Servo_7=10;/左后Angle_Servo_8=19;Angle_Servo_9=19;Angle_Servo_13=10;/右中Angle_Servo_14=0;Angle_Servo_15=0;/*函数名称:void Forword_Gait(unsigned int time)函数功能:前进步态转换角度:30 度*/void Forword_Gait(unsigned int time)/*-135 抬起-*/1/左前足抬起Angle_Servo_1=7;Angle_Servo_2=7;Angle_Servo_3=13;/左后足抬起Angle_Servo_7=7

23、;Angle_Servo_8=7;Angle_Servo_9=9;/右中足抬起Angle_Servo_13=11;Angle_Servo_14=11;Angle_Servo_15=9;/*延时*/Delay_ms(time);/*-135 前移-*/2/左前足Angle_Servo_1=7;Angle_Servo_2=7;Angle_Servo_3=14;/左后足Angle_Servo_7=7;Angle_Servo_8=7;Angle_Servo_9=10;/右中足Angle_Servo_13=11;Angle_Servo_14=11;Angle_Servo_15=8;/*延时*/Delay

24、_ms(time);/*-135 放下-*/2/左前足Angle_Servo_1=9;Angle_Servo_2=9;Angle_Servo_3=14;/左后足Angle_Servo_7=9;Angle_Servo_8=9;Angle_Servo_9=10;/右中足Angle_Servo_13=11;Angle_Servo_14=11;Angle_Servo_15=8;/*延时*/Delay_ms(time);/*-246 抬起-*/右前足抬起Angle_Servo_10=11;Angle_Servo_11=11;Angle_Servo_11=3;/右后足抬起Angle_Servo_16=11

25、;Angle_Servo_17=11;Angle_Servo_18=11;/左中足抬起Angle_Servo_4=9;Angle_Servo_5=9;Angle_Servo_6=9;/*延时*/Delay_ms(time);/*-246 前移 135 归位-*/右前足Angle_Servo_10=11;Angle_Servo_11=11;Angle_Servo_12=2;/右后足Angle_Servo_16=11;Angle_Servo_17=11;Angle_Servo_18=10;/左中足Angle_Servo_4=7;Angle_Servo_5=7;Angle_Servo_6=8;/归位

26、/左前足Angle_Servo_1=9;Angle_Servo_2=9;Angle_Servo_3=14;/左后足Angle_Servo_7=9;Angle_Servo_8=9;Angle_Servo_9=7;/右中足Angle_Servo_13=9;Angle_Servo_14=9;Angle_Servo_15=9;/*延时*/Delay_ms(time);/*-246 放下-*/右前足Angle_Servo_10=9;Angle_Servo_11=9;Angle_Servo_12=2;/右后足Angle_Servo_16=9;Angle_Servo_17=9;Angle_Servo_18=

27、10;/左中足Angle_Servo_4=9;Angle_Servo_5=9;Angle_Servo_6=8;/*延时*/Delay_ms(time);/*-135 抬起-*/左前足抬起Angle_Servo_1=7;Angle_Servo_2=7;Angle_Servo_3=14;/左后足抬起Angle_Servo_7=7;Angle_Servo_8=7;Angle_Servo_9=7;/右中足抬起Angle_Servo_13=11;Angle_Servo_14=11;Angle_Servo_15=9;/*延时*/Delay_ms(time);/*-135 前移 246 归位-*/归位/右前

28、足Angle_Servo_10=9;Angle_Servo_11=9;Angle_Servo_12=3;/右后足Angle_Servo_16=9;Angle_Servo_17=9;Angle_Servo_18=11;/左中足Angle_Servo_4=9;Angle_Servo_5=9;Angle_Servo_6=9;/*延时*/Delay_ms(time);/*/机体进食状态/*/void Gesture3_JinShi(void)Angle_Servo_4=3;/左中Angle_Servo_5=9;Angle_Servo_6=5;Angle_Servo_7=9;/左后Angle_Servo

29、_8=7;Angle_Servo_9=7;Angle_Servo_13=10;/右中Angle_Servo_14=5;Angle_Servo_15=9;Angle_Servo_10=5;/右后Angle_Servo_11=7;Angle_Servo_12=7;/*-运动-*/落下Angle_Servo_1=4;/左前Angle_Servo_2=1;Angle_Servo_3=7;Angle_Servo_16=10;/右前Angle_Servo_17=14;Angle_Servo_18=7;/Delay_ms(300);/抬起/Angle_Servo_1=6;/Angle_Servo_16=10

30、;/Angle_Servo_2=0;/Angle_Servo_17=0;/Angle_Servo_3=19;/Angle_Servo_18=19;/Delay_ms(300);/*-*/*/机体收缩/*/定稿void Gesture2_ShouSuo(void)Angle_Servo_1=7;/左前Angle_Servo_2=1;Angle_Servo_4=7;/左中Angle_Servo_5=1;Angle_Servo_7=7;/左后Angle_Servo_8=1;Angle_Servo_16=7;/右前Angle_Servo_17=14;Angle_Servo_13=7;/右中Angle_

31、Servo_14=14;Angle_Servo_10=7;/右后Angle_Servo_11=14;Delay_ms(500);Angle_Servo_3=1;Angle_Servo_6=1;Angle_Servo_9=1;Angle_Servo_18=17;Angle_Servo_15=17;Angle_Servo_12=17;/*/机体站立/*/定稿void Gesture1_ZhanLi(void)Angle_Servo_1=7;/左前Angle_Servo_2=7;Angle_Servo_3=7;Angle_Servo_4=7;/左中Angle_Servo_5=7;Angle_Serv

32、o_6=7;Angle_Servo_7=7;/左后Angle_Servo_8=7;Angle_Servo_9=7;Angle_Servo_16=7;/右前Angle_Servo_17=7;Angle_Servo_18=7;Angle_Servo_13=7;/右中Angle_Servo_14=7;Angle_Servo_15=7;Angle_Servo_10=7;/右后Angle_Servo_11=7;Angle_Servo_12=7;/*/机体伸展/*/定稿void Gesture0_ShenZhan(void)Angle_Servo_1=9;/左前Angle_Servo_2=9;Angle_

33、Servo_3=14;Angle_Servo_4=9;/左中Angle_Servo_5=9;Angle_Servo_6=9;Angle_Servo_7=9;/左后Angle_Servo_8=9;Angle_Servo_9=7;Angle_Servo_10=9;/右前Angle_Servo_11=9;Angle_Servo_12=3;Angle_Servo_13=9;/右中Angle_Servo_14=9;Angle_Servo_15=9;Angle_Servo_16=9;/右后Angle_Servo_17=9;Angle_Servo_18=11;/*函数名称:void Left_Gait(vo

34、id)函数功能:左转步态转换角度:30 度*/void Left_Gait(void)/*函数名称:void Left_Gait(void)函数功能:右转步态转换角度:30 度*/void Right_Gait(uint time)/*-组 1 抬起-*/左前足抬起Angle_Servo_1=7;/11 恢复初始角度左前足内圈舵机Angle_Servo_2=2;/9 抬高 30 度左前足中圈舵机Angle_Servo_3=4;/11 往下 30 度左前足外圈舵机/左后足抬起Angle_Servo_7=10;/14 恢复初始角度左后足内圈舵机Angle_Servo_8=12;/13 抬高 30

35、度左后足中圈舵机Angle_Servo_9=11;/12 往下 30 度左后足外圈舵机/右中足抬起Angle_Servo_13=9;/13 恢复初始角度右中足内圈舵机Angle_Servo_14=2;/9 抬高 30 度右中足中圈舵机Angle_Servo_15=4;/11 往下 30 度左后足外圈舵机/*-组 2 右转-*/Angle_Servo_16=5;/12 左转 30 度右前足内圈舵机Angle_Servo_10=5;/12 左转 30 度右后足内圈舵机Angle_Servo_4=6;/13 左转 30 度左中足内圈舵机/*延时*/Delay_ms(time);/*-组 1 落下-*

36、/左前足落下Angle_Servo_2=5;/9 恢复初始角度左前足中圈舵机Angle_Servo_3=3;/11 恢复初始角度左前足外圈舵机/左后足落下Angle_Servo_8=9;/13 恢复初始角度左后足中圈舵机Angle_Servo_9=12;/12 恢复初始角度左后足外圈舵机/右中足落下Angle_Servo_14=5;/9 恢复初始角度右中足中圈舵机Angle_Servo_15=3;/11 恢复初始角度右中足外圈舵机/*-组 2 抬起-*/右前足抬起Angle_Servo_16=8;/12 恢复初始角度右前足内圈舵机Angle_Servo_17=2;/9 抬高 30 度右前足中圈

37、舵机Angle_Servo_18=4;/11 往下 30 度右前足外圈舵机/右后足抬起Angle_Servo_10=8;/12 恢复初始角度右后足内圈舵机Angle_Servo_11=2;/9 抬高 30 度右后足中圈舵机Angle_Servo_12=4;/11 往下 30 度右后足外圈舵机/左中足抬起Angle_Servo_4=9;/13 恢复初始角度左中足内圈舵机Angle_Servo_5=2;/9 抬高 30 度左中足中圈舵机Angle_Servo_6=4;/11 往下 30 度左中足外圈舵机/*延时*/Delay_ms(time);/*-组 1 右转-*/机体右转Angle_Servo

38、_1=4;/11 左转 30 度左前足内圈舵机Angle_Servo_7=7;/14 左转 30 度左后足内圈舵机Angle_Servo_13=6;/13 左转 30 度右中足内圈舵机/*-组 2 落下-*/右前足落下Angle_Servo_17=5;/9 恢复初始角度右前足中圈舵机Angle_Servo_18=4;/11 恢复初始角度右前足外圈舵机/右后足落下Angle_Servo_11=5;/9 恢复初始角度右后足中圈舵机Angle_Servo_12=4;/11 恢复初始角度右后足外圈舵机/左中足落下Angle_Servo_5=5;/9 恢复初始角度左中足中圈舵机Angle_Servo_6

39、=3;/11 恢复初始角度左中足外圈舵机/*延时*/Delay_ms(time);/*函数名称:void Left_Gait(void)函数功能:后退步态转换角度:30 度*/void Back_Gait(void)/*定时器函数配置*/void time_configuration()TMOD=0X01;TH0=0XFF;/0.125MSTL0=0X83;ET0=1;TR0=1;EA=1;time0_count=0;void time0()interrupt 1/*定时计数单元*/TH0=0XFF;/0.125MSTL0=0X83;time0_count+;if(time0_count160

40、)time0_count=0;/20MSif(time0_count=160)led_count+;if(led_count=4)led_count=0;led=led;/*/头/*-舵机 19-*/if(time0_count=Angle_Servo_Head+4)SERVO_Series_Head=1;else SERVO_Series_Head=0;/*左边腿变量*/左前/*-舵机 1-*/if(time0_count=Angle_Servo_1+4)SERVO_Series_1=1;else SERVO_Series_1=0;/*-舵机 2-*/if(time0_count=Angle

41、_Servo_2+4)SERVO_Series_2=1;else SERVO_Series_2=0;/*-舵机 3-*/if(time0_count=Angle_Servo_3+4)SERVO_Series_3=1;else SERVO_Series_3=0;/左中/*-舵机 1-*/if(time0_count=Angle_Servo_4+4)SERVO_Series_4=1;else SERVO_Series_4=0;/*-舵机 2-*/if(time0_count=Angle_Servo_5+4)SERVO_Series_5=1;else SERVO_Series_5=0;/*-舵机 3

42、-*/if(time0_count=Angle_Servo_6+4)SERVO_Series_6=1;else SERVO_Series_6=0;/左后/*-舵机 1-*/if(time0_count=Angle_Servo_7+4)SERVO_Series_7=1;else SERVO_Series_7=0;/*-舵机 2-*/if(time0_count=Angle_Servo_8+4)SERVO_Series_8=1;else SERVO_Series_8=0;/*-舵机 3-*/if(time0_count=Angle_Servo_9+4)SERVO_Series_9=1;else S

43、ERVO_Series_9=0;/*右边腿变量*/右前/*-舵机 1-*/if(time0_count=Angle_Servo_16+4)SERVO_Series_16=1;else SERVO_Series_16=0;/*-舵机 2-*/if(time0_count=Angle_Servo_17+4)SERVO_Series_17=1;else SERVO_Series_17=0;/*-舵机 3-*/if(time0_count=Angle_Servo_18+4)SERVO_Series_18=1;else SERVO_Series_18=0;/右中/*-舵机 1-*/if(time0_co

44、unt=Angle_Servo_13+4)SERVO_Series_13=1;else SERVO_Series_13=0;/*-舵机 2-*/if(time0_count=Angle_Servo_14+4)SERVO_Series_14=1;else SERVO_Series_14=0;/*-舵机 3-*/if(time0_count=Angle_Servo_15+4)SERVO_Series_15=1;else SERVO_Series_15=0;/右后/*-舵机 1-*/if(time0_count=Angle_Servo_10+4)SERVO_Series_10=1;else SERVO_Series_10=0;/*-舵机 2-*/if(time0_count=Angle_Servo_11+4)SERVO_Series_11=1;else SERVO_Series_11=0;/*-舵机 3-*/if(time0_count0;x-)Delay1ms();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁