C51单片机应用与C语言程序设计(第4版)-基于机器人工程对象的项目实践 课件 ch03 C语言函数与机器人运动控制_第1页
C51单片机应用与C语言程序设计(第4版)-基于机器人工程对象的项目实践 课件 ch03 C语言函数与机器人运动控制_第2页
C51单片机应用与C语言程序设计(第4版)-基于机器人工程对象的项目实践 课件 ch03 C语言函数与机器人运动控制_第3页
C51单片机应用与C语言程序设计(第4版)-基于机器人工程对象的项目实践 课件 ch03 C语言函数与机器人运动控制_第4页
C51单片机应用与C语言程序设计(第4版)-基于机器人工程对象的项目实践 课件 ch03 C语言函数与机器人运动控制_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3讲C语言函数与机器人运动控制“十三五”职业教育国家规划教材

工作导向创新实践教材程序设计(第4版)机器人运动方向的定义

按照图3-1前进方向的定义,机器人向前走时,从机器人的左边看,它向前走时轮子是逆时针旋转的;从右边看,另一个轮子则是顺时针旋转的。向前运动图3-1定义了机器人的前、后、左、右4个方向:当机器人向前走时,它将走向本页纸的右边;向后走时,会走向纸的左边;向左转,会使其向纸的顶端移动;向右转,它会朝着本页纸的底端移动。任务1基本运动动作任务1基本运动动作例程:RobotForwardThreeSeconds.c(1)确保微控制器和伺服电机都已接通电源;(2)输入、保存、编译、下载并运行程序

RobotForwardThreeSeconds.c。RobotForwardThreeSeconds.c是如何工作的for循环体中前三行语句使左侧电机逆时针旋转,接着的三行语句使右侧电机顺时针旋转。因此,两个轮子转向机器人的前端,使机器人向前运动。整个for循环执行130次,大约需要3s,从而使机器人向前运动3s。可以把上述程序段组合到一个程序中,让机器人向前走、左转、右转及向后走。使机器人向后走使机器人原地左转使机器人原地右转任务1基本运动动作向后走、原地转弯和绕轴旋转将delay

nus函数的参数n以不同的值组合可以使机器人以其他的方式运行。例如以下程序段:任务2

匀加速/减速运动机器人在启动和停止时有一个较大的前倾力或者后坐力。要消除这种情况,就必须让机器人的速度逐渐增加或逐渐减小。采用均匀加速或减速是一种比较好的速度控制策略,这样不仅可以让机器人运动得更加平稳,还可以延长机器人电机的使用寿命。例程:StartAndStopWithRamping.c●输入、保存并运行程序StartAndStopWithRamping.c;●验证机器人是否逐渐加速到全速,保持一段时间,然后逐渐减速到停止。编写匀加速运动程序任务3用函数调用简化运动程序基本动作程序,可以将这些基本动作程序放在函数中,供其他函数调用来简化程序。C语言提供了强大的函数定义功能。一个C程序通常由一个主函数和若干个其他函数构成,由主函数调用其他函数,其他函数也可以相互调用。同一个函数可以被一个或多个函数调用任意多次。例程:MovementsWithFunctions.c具体请参照课本P51-52例程:MovementsWithOneFuntion.c具体请参照课本P52任务4高级主题—用数组建立复杂运动在本讲中,用到C语言的一种新的数据类型——数组。字符型数据字符常量是指用一对单引号括起来的一个字符,如'a'、19'、!'。字符常量中的单引号只起到定界作用,并不表示字符本身。单引号中的字符不能是单引号(')和反斜杠(\),它们特有的表示法将在转义字符中介绍。

在C语言中,字符是按其所对应的ASCII码值来存储的,一个字符占一个字节,见表3-1。字符ASCI码值

33048149957A65B66a97b98表3-1字符与其对应的ASCII码值

字符常量:任务4高级主题—用数组建立复杂运动字符型数据

转义字符是一种特殊的字符常量,以反斜杠“\”开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。例如,前面各例程中printf函数用到的“\n”就是一个转义字符,其含义是“回车换行”。

表3-2给出了C语言中常用的转义字符。转义字符:字符变量用来存放字符常量,注意,只能存放一个字符。字符变量的定义形式如下:charc1,c2。20%30%40%50%数组在程序设计中,为了处理方便,可以把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。一维数组的引用数组元素是组成数组的基本单元。数组元素也是一种变量,其标识方法为数组名后跟一个下标,下标表示元素在数组中的顺序号(从0开始计数)。数组元素的一般形式为:字符与字符串的区别要特别注意字符与字符串的区别,除了表示形式不同,其存储性质也不相同,字符A只占1个字节,而字符串"A"占2个字节。任务4高级主题—用数组建立复杂运动数组类型说明符数组名[常量表达式];数组名[下标]字符串和字符串结束标志字符串常量是指用一个字符数组来存放一个字符串“China”“A”“333212-6589”等。双引号只起定界作用,用双引号括起的字符串中不能有双引号(")和反斜杠(1)。任务4高级主题—用数组建立复杂运动NavigationWithSwitch.c是如何工作的在程序主函数中定义了一个字符数组,如下所示:charNavigation[10]={F,L,F,F,R',B,L,B',B',Q‘};这个数组中存储的是一些命令:F表示向前运动;L表示向左转;R表示向右转;B表示向后退;Q表示程序结束。任务4高级主题—

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论