智能垃圾分类机器人PPT课件

上传人:资****亨 文档编号:132734570 上传时间:2020-05-19 格式:PPT 页数:30 大小:4.47MB
返回 下载 相关 举报
智能垃圾分类机器人PPT课件_第1页
第1页 / 共30页
智能垃圾分类机器人PPT课件_第2页
第2页 / 共30页
智能垃圾分类机器人PPT课件_第3页
第3页 / 共30页
智能垃圾分类机器人PPT课件_第4页
第4页 / 共30页
智能垃圾分类机器人PPT课件_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《智能垃圾分类机器人PPT课件》由会员分享,可在线阅读,更多相关《智能垃圾分类机器人PPT课件(30页珍藏版)》请在金锄头文库上搜索。

1、 智能垃圾分类机器人 arduino基础 2 01 A 什么是Arduino 02 B Arduino能做什么 03 C Arduino怎么用 一 Arduino的由来 Arduino创始人MassimoBanzi之前是意大利Ivrea一家高科技设计学校的老师 他的学生们经常抱怨找不到便宜好用的微控制器 2005年冬天 MassimoBanzi跟DavidCuartielles讨论了这个问题 DavidCuartielles是一个西班牙籍晶片工程师 当时在这所学校做访问学者 两人决定设计自己的电路板 并引入了Banzi的学生DavidMellis为电路板设计编程语言 两天以后 DavidMel

2、lis就写出了程式码 又过了三天 电路板就完工了 这块电路板被命名为Arduino 二 什么是Arduino Arduino是一种开源的电子开发平台 该平台最初主要基于AVR单片机的微控制器和相应的开发软件 目前在国内正受到电子发烧友的广泛关注 自从2005年Arduino腾空出世以来 其硬件和开发环境一直进行着更新迭代 几乎任何人 即便不懂电脑编程 利用这个开发板也能用Arduino做出炫酷有趣的东西 比如对感测器探测做出一些回应 闪烁灯光 控制马达等 三 Arduino能做什么 最简单应用 通过Arduino开发板引脚输出高电平点亮一盏LED灯 三 Arduino能做什么 利用Arduin

3、o板作为中央控制器实现家居智能化 语音口令开灯 开空调 随着室内光线环境自动调节亮度 手机APP控制家用电器等 让你的arduino连入物联网 Arduino高端应用 乐为联网云数据平台 四 认识Arduino开发板 ArduinoUNO 四 认识Arduino开发板 arduinoMega2560 五 Arduino开发环境 Arduino的编程是在ArduinoIDE上进行的 如左图编程界面所示 开发环境提供了最基本的模板 包含了setup 函数和loop 函数 在setup 函数上方空白区域 可以插入需要用到的函数 h头文件以及申明要用到的函数 六 函数的概念 定义 函数是一种能完成某种

4、特定功能二端口通道 通过输入合适的东西获得想要的某种输出 举例 例如数学上y 2x 这条函数可以完成将输入值翻倍这样一个工作 注意 arduino提供了大量的基础函数 包括I O控制 时间函数 中断函数 串口通信函数等 arduino也提供了许多关于这些基础函数的实例程序 这些例程可以在arduino开发环境的 File Examples 菜单中找到 七 Arduino的常用基本函数 Arduino程序的主体包括 Setup 函数和loop 函数 1 setup 函数 在程序中只运行一次 它的功能为完成程序的各类初始化工作 2 loop 函数 程序的主函数 程序运行过程中loop 函数不断循环

5、 Arduino常用函数 pinMode 功能 将指定的引脚配置成输出或输入语法 pinMode pin mode 参数 pin 表示要设置模式的引脚mode 包括INPUT或OUTPUT返回值 无 例程 intledPin 13 LED连接到数字脚13voidsetup pinMode ledPin OUTPUT 设置数字脚为输出 voidloop digitalWrite ledPin HIGH 点亮LEDdelay 1000 等待一秒digitalWrite ledPin LOW 灭掉LED延迟 1000 等待第二个 Arduino常用函数 digitalWrite 功能 给一个数字引脚

6、写入HIGH或者LOW 语法 digitalWrite pin value 参数 pin 引脚编号value HIGHorLOW返回值 无 例程 intledPin 13 LED连接到数字13号端口voidsetup pinMode ledPin OUTPUT 设置数字端口为输入模式 voidloop digitalWrite ledPin HIGH 使LED亮delay 1000 延迟一秒digitalWrite ledPin LOW 使LED灭delay 1000 延迟一秒 Arduino常用基本函数 digitalRead 功能 读取指定引脚的值 HIGH或LOW 语法 digitalR

7、ead PIN 参数 Pin 你想读取的引脚号返回值 HIGH或LOW 例程 intledPin LED连接到13脚intinPin 7 按钮连接到数字引脚7intval 0 定义变量以存储读值voidsetup pinMode ledPin OUTPUT 将13脚设置为输出pinMode inPin INPUT 将7脚设置为输入 voidloop val digitalRead inPin 读取输入脚digitalWrite ledPin val 将LED值设置为按钮的值 Arduino常用基本函数 analogRead 功能 从指定的模拟引脚读取模拟数据值 语法 analogRead PI

8、N 参数 pin 从输入引脚读取数值返回值 从0到1023的整数值 例程 intanalogPin 3 电位器 中间的引脚 连接到模拟输入引脚3 另外两个引脚分别接地和 5Vintval 0 定义变量来存储读取的数值voidsetup serial begin 9600 设置波特率 9600 voidloop val analogRead analogPin 从输入引脚读取数值serial println val 显示读取的数值 Arduino常用基本函数 analogWrite 功能 从一个引脚输出模拟值 PWM 语法 analogWrite pin value 参数 pin 用于输入数值的

9、引脚 value 占空比 0 完全关闭 到255 完全打开 之间 返回值 无 例程 通过读取电位器的阻值控制LED的亮度intledPin 9 LED连接到数字引脚9intanalogPin 3 电位器连接到模拟引脚3intval 0 定义变量存以储读值voidsetup pinMode ledPin OUTPUT 设置引脚为输出引脚 voidloop val analogRead analogPin 从输入引脚读取数值analogWrite ledPin val 4 以val 4的数值点亮LED 因为analogRead读取的数值从0到1023 而analogWrite输出的数值从0到255

10、 Arduino常用基本函数 delay 功能 使程序延时特定的时间 毫秒 语法 delay ms 参数 ms 暂停的毫秒数 unsignedlong 返回值 无 例程 ledPin 13 LED连接到数字13脚voidsetup pinMode ledPin OUTPUT 设置引脚为输出 voidloop digitalWrite ledPin HIGH 点亮LEDdelay 1000 等待1秒digitalWrite ledPin LOW 灭掉LEDdelay 1000 等待一秒 中断的定义 由于某一随机事件的发生 单片机暂停原程序的运行 转去执行另一程序 随机事件 处理完毕后又自动返回原

11、程序继续运行 其发生过程如右图 中断的要素 主程序 单片机正在运行的程序 中断源 引起中断的原因 或能发生中断申请的来源 中断服务程序 处理中断事件的程序 Arduino常用基本函数 中断介绍 中断发生的过程 Arduino常用基本函数 中断函数 1 interrupts 函数功能 负责打开总中断返回值 无参数 无 2 noInterrupts 函数功能 负责关闭总中断返回值 无参数 无 3 attachInterrupt interrput function mode 功能 用于设置外部中断参数 3个 分别表示中断源 中断处理函数和触发模式 它们的具体含义如下 中断源 可选中断0或者1 对应

12、arduino的2或者3号数字引脚 中断处理函数 是一段子程序 当中断发生时执行该子程序部分 其中参数值为函数的指针 触发模式 有四种类型 LOW 低电平触发 CHANGE 变化时触发 RISING 低电平变为高电平触发 FALLING 高电平变为低电平触发 Arduino常用基本函数 中断函数 4 detachInterrupt interrput 函数功能 用于取消中断参数 Interrupt 表示所要取消的中断源 例程 用中断源0 接引脚D2 作为触发源控制arduinoUNO板上的LED亮或灭volatileintstate LOW voidsetup Serial begin 960

13、0 attachInterrupt 0 change CHANGE 当D2电平改变时 触发中断函数 voidloop digitalWrite 13 state if state LOW Serial println 111 if state HIGH Serial println 222 voidchange 中断函数 state state Arduino常用基本函数 串口通信函数 1 Serial begin 功能 用于设置串口的波特率波特率是指每秒传输的比特数 除以8可得到每秒传输的字节数 一般的波特率有9600 19200 57600 115200等 介绍 通过在头文件Hardwar

14、eSerial h中定义一个HardwareSerial类的对象serial 然后直接使用该类的成员函数来实现 2 Serial available 功能 用来判断串口是否收到数据返回值 int型3 Serial read 功能 用于读入串口数据返回值 int型的串口数据 Arduino常用基本函数 串口通信函数 4 Serial print 功能 用于从串口输出数据 数据可以是变量 也可以是字符串 5 Serial println 功能 与Serial print函数类似 都是从串口输出数据 只是Serial println函数多了回车换行功能 例程 读取输入的字符 并在监视器中显示出来的程

15、序如下 Stringval voidsetup Serial begin 9600 voidloop while Serial available 0 val char Serial read delay 5 if val length 0 Serial println val val 八 认识函数库 函数库 由系统建立的具有一定功能的函数的集合 库中存放函数的名称和对应的目标代码 以及连接过程中所需的重定位信息 用户也可以根据自己的需要建立自己的用户函数库 库函数 存放在函数库中的函数 库函数具有明确的功能 入口调用参数和返回值 头文件 有时也称为包含文件 C语言库函数与用户程序之间进行信息

16、通信时要使用的数据和变量 在使用某一库函数时 都要在程序中嵌入 用 include 该函数对应的头文件 九 机器人包含的库函数 库函数组成 由 h文件 头文件 和 cpp文件 源程序文件 组成 十 怎样使用库函数 放置位置 一般是放到lib文件里调用方法 将它所在的文件名用 include libraries所在的路径 库函数拷贝到的路径 ifndefColSensor h defineColSensor hclassColSensor private 定义引脚intS0 S1 S2 S3 OUT 定义延时unsignedlongtime public 定义计数器unsignedlongg count 定义数组 用来存放读取到的RGB值intg array 3 定义数组 用来存放比例系数floatg SF 3 构造函数ColSensor inta intb intc intd inte unsignedlongf 将引脚配置为输出 同时设置输出比例因子voidMode inta 1 intb 1 控制数字引脚 切换滤波器 红 绿 蓝分别对应S2与S3的00 11 01电平 10时过滤所

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

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号