(RB-13K024A)基于Arduino 电子积木互动套件

来自ALSROBOT WiKi
跳转至: 导航搜索
13K024A01.png

目录

产品概述

Arduino Uno是开源的USB接口Simple I/O接口板(包括12个数字IO,6个PWM输出,6通道10位ADC)。它使用C/C++语言的IDE集成开发环境进行编程,让你快速使用Arduino制作互动作品。本产品使用便于插接的电子积木,使得原型搭建和验证更加轻松。
基于Arduino互动电子积木套件是哈尔滨奥松机器人科技有限公司专门为Arduino与单片机电子制作爱好者精心打造的一款电子学习套件,本套件充分考虑到了爱好者初学电子遇到的困难,从简到繁,由浅至深,从数字到模拟传感器实验的阶梯式学习。即使你没有学过电子、不懂单片机也没有关系,只要你有足够创意,肯于动手,相信你很快就能创造出令人惊艳的互动作品。 整套基于Arduino电子积木互动套件无需焊接,只要像玩积木一样插接就可以完成实验,避免了初学者焊接元件浪费原料不环保的习惯。传感器使用放插反接口,大大降低接错的可能性。 电子积木套件中使用Arduino IDE编程的同时,还会介绍如何使用ArduBlock实现相同的效果。ArduBlock是一款图形化编程工具,因此不需要代码也能实现某些功能。还包括了Processing、Arduino IDE、Fritzing、串口调试助手等常用软件。使爱好者完全无后顾之忧,轻松学习并启发创新思维,领悟开源创意文化,这款套件是带你进入互动新媒体领域和电子世界的必备之选。

主控器技术参数

  1. 微处理器:ATmega328P-PU
  2. 尺寸:75×55×15mm
  3. 工作电压:5V
  4. 输入电压:接上USB 时无须外部供电或外部7V~12V DC输入
  5. 输出电压:5V DC输出或3.3V DC输出
  6. 时钟频率:16 MHz
  7. 输入电压:7-12V(推荐)
  8. 输入电压:6-20V(极限)
  9. 支持USB供电及接口协议(不需外接电源)
  10. 支持ISP下载功能
  11. 数字I/O端口:14个(6个PWM输出口)
  12. 模拟输入端口:6个
  13. 直流电流:40mA(I/O端口)
  14. 直流电流:50mA(3.3V端口)
  15. Flash内存:32 KB(ATmega328,其中0.5 KB用于引导程序)
  16. SRAM:2 KB(ATmega328)
  17. EEPROM:1 KB(ATmega328)

产品清单

  1. RB-01C076 CarDuino UNO R3 * 1 个
  2. RB-01C015A Arduino XBee Sensor Shield * 1 个
  3. RB-02S032A 按压式大按钮模块 * 1 个
  4. RB-03T004A 红外发射模块 * 1 个
  5. RB-02S005A LED发光模块(红色) * 1 个
  6. RB-02S024A 旋转角度电位计传感器 * 1 个
  7. RB-02S031A 蜂鸣器发声模块 * 1 个
  8. RB-03T005A 红外接收模块 * 1 个
  9. RB-02S023A 光线传感器模块 * 1 个
  10. RB-02S025A 大功率继电器模块 * 1 个
  11. RB-02S002A Mini红外寻线传感器 * 1 个
  12. RB-02S027A 绿色单向倾角传感器 * 1 个
  13. RB-02S030A 蓝色震动传感器 * 1 个
  14. RB-02S022A 火焰传感器 * 1 个
  15. RB-02S019A LM35线性温度传感器 * 1 个
  16. RB-02S014A DHT11温湿度传感器 * 1 个
  17. RB-02S009A 电压检测传感器 * 1 个
  18. RB-02S017A 红外热释电传感器 * 1 个
  19. RB-02S048A 水位传感器 * 1 个
  20. RB-02S047A 土壤湿度传感器 * 1 个
  21. RB-02S003A Mini红外避障传感器 * 1 个
  22. RB-03T003 超薄红外遥控器 * 1 个
  23. RB - 12C229 单头放插反 3P 连接线 * 10 条
  24. RB - 10P017 6 节 5 号并排电池盒 * 1 个
  25. RB - 10P016 DC2.1 电源接线端子 * 1 个
  26. RB - 06L008 抗干扰 USB 数据连接线 * 1 条
  27. RB - 13K031 超大双层元件盒 * 1 个
  28. RB - 12C199 黑色一字螺丝刀 * 1 个
  29. RB - 07B018 基于 Arduino 互动电子积木资料光盘 * 1 张

编译环境下载

  • Arduino .cc 当前最新版 IDE:Arduino 1.6.8

下载地址: http://www.arduino.cc/en/Main/Software

  • Arduino .org 当前最新版 IDE:Arduino 1.7.8

下载地址:http://www.arduino.org.cn/software

  • Ardublock 图形化编译软件

下载地址:点击下载 Ardublock 编程软件

Arduino 基本语言

Arduino 软件及驱动安装

从闪烁的 LED 开始

  • 【功能】

LED闪烁程序要实现的功能是LED小灯点亮一秒,再熄灭一秒。这个程序是学习Arduino IDE的第一步。千里之行,始于足下,让我们开始吧!

  • 【硬件】

LED是发光二极管的英文缩写。它可以发出不同波长的电磁波,我们的产品发出的红色的可见光。

13K024A02.png

硬件连接还是比较容易的,首先把扩展板卡合到主控板的上方,注意此连接方法是唯一的,如果位置卡合错误可能会造成主板损坏!

13K024A03.png

要实现LED闪烁的效果,我们只需要LED电子模块即可,我们看到电子模块上带有标记D,说明是数字的(digital)传感器,因此使用3P线将其连接到扩展板。注意通常不使用D0、D1和D13。因为D0和D1在程序上传时不能被占用,D13内置了1KΩ的电阻,默认连接了板载的L小灯,常用作测试。本案例中把LED连接到D7。

13K024A04.png

注意3P线的线序要和扩展板一一对应。为黑色对应G(接地,GND),中间的红色对应V(5V电源,可用跳线帽切换为3.3V),黄色对应信号线,可能是A或D,主要取决于电子模块的符号是A还是D。

  • 【软件】

打开Arduino IDE,编写并上传如下程序:

/***********************************************************
奥松机器人  RobotBase  www.robotbase.cn
目    的:  LED闪烁	
应用硬件:  Carduino UNO R3 控制器
应用软件:  Arduino IDE 1.7.8
发布时间:  2016-02-16
创 建 人:  李泽
版 本 号:  1.0 
说    明:  若用于商业用途,请保留此段文字或注明代码来源	
           哈尔滨奥松机器人科技有限股份公司保留所有版权   
***********************************************************/
void setup() {
  pinMode(7, OUTPUT);  // 设置D7为输出模式,因为LED是输出装置
}

void loop() {
  digitalWrite(7, LOW);  // 设置D7为低电平,LED熄灭
  delay(1000);  // 延时等待1000毫秒,即1秒钟
  digitalWrite(7, HIGH);  // 设置D7为高电平,点亮LED
  delay(1000);
}
  • 【ArduBlock】

如果不想敲入复杂的代码,你还可以选择相对比较简单的ArduBlock进行编程。安装和打开方法参考之前的软件介绍。

13K024A05.png

精选例程

火焰报警器

  • 【功能】

顾名思义,本电子装置使用火焰传感器检测是否存在火源,当发现火焰后发出警报。你还可以结合气体传感器,甚至在掌握了更多编程方法后,实现发送微信消息这样的功能。为了简单,这里我们使用蜂鸣器发出警报。为了得知阈值(也就是出发警报的临界值),你应当先用串口输出有无火焰的数值,然后给出一个合理的数值。

  • 【硬件】

火焰传感器的专业称呼应为光电二极管。光电二极管利用杂质半导体的性质制成PN节,从而对特定波长的电磁波敏感。光电二极管工作在反向电压下,在正向电压下也能导电,但是效果非常差。

13K024A06.png

我们在“人体红外报警器”便知道具有温度的物体可以发射红外线。火焰温度更高,当然也会发出红外线,但是和人体发出红外线的波长不同。火焰发出红外线的波长在大自然中并不常见,但是它依然会受到人体、阳光等因素的影响。该电子积木和红外热释电传感器类似,我们也可以用纸绕成圈后套在传感器上以减少干扰。 我们把火焰传感器连接到A0,蜂鸣器给到D8。

13K024A07.png
  • 【软件】

打开Arduino IDE,编写并上传如下程序:

/***********************************************************
奥松机器人  RobotBase  www.robotbase.cn
目    的:  当发现火焰时报警
应用硬件:  Carduino UNO R3 控制器
应用软件:  Arduino IDE 1.7.8
发布时间:  2016-02-17
创 建 人:  李泽
版 本 号:  1.0 
说    明:  若用于商业用途,请保留此段文字或注明代码来源	
           哈尔滨奥松机器人科技有限股份公司保留所有版权   
***********************************************************/
void setup()
{
  pinMode(8, OUTPUT);  // 蜂鸣器是输出装置
  noTone(8);
  digitalWrite(8, HIGH);  // 关闭蜂鸣器
}

void loop()
{
  if(analogRead(A0) > 200) {  // 如果检测到的火焰值超过了你设定的阈值
    digitalWrite(8, LOW); delay(2000);  // 那么就让蜂鸣器响两秒
    noTone(8);
    digitalWrite(8, HIGH);  // 然后再关闭蜂鸣器
  }
}
  • 【ArduBlock】
13K024A08.png

电子温度计

  • 【功能】

空气的温度和湿度是最直观、最常见的两个物理量。能够测量它们的传感器非常多,我们的电子模块使用LM35测量空气温度、DHT11测量空气温湿度。在这个案例中我们制作一个简单的电子温度计,串口监视器就是我们的电子屏幕,输出当前的温度和湿度。

  • 【硬件】

我们使用LM35测量温度,使用DHT11测量湿度。两者的内部结构非常复杂,我们就不做介绍了。

13K024A09.png

LM35标记为A,所以直接接到模拟口并使用analogRead读取数值。LM35规定温度每升高1℃,电压增加10mV。而ADC的精度决定其检测范围是0到1023,对应的就是0V到5V,那么假设当前检测的数值是n,那么当前温度=5×n÷1023×100。注意ADC最大量程5V可以通过AREF引脚修改。 至于DHT11,我们仅在ArduBlock程序中进行演示。如果要在代码中使用,建议下载DHT11相关的库函数,然后根据库文件的要求进行使用即可。 我们连接LM35电子积木到A0,DHT11到D8。

13K024A10.png
  • 【软件】

打开Arduino IDE,编写并上传如下程序:

/***********************************************************
奥松机器人  RobotBase  www.robotbase.cn
目    的:  通过串口输出空气温度值
应用硬件:  Carduino UNO R3 控制器
应用软件:  Arduino IDE 1.7.8
发布时间:  2016-02-17
创 建 人:  李泽
版 本 号:  1.0 
说    明:  若用于商业用途,请保留此段文字或注明代码来源	
           哈尔滨奥松机器人科技有限股份公司保留所有版权   
***********************************************************/
void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Serial.print("Temperature: ");
  Serial.println(analogRead(0)*5.0/1023*100);  // 注意此处的公式和类型转换
  delay(100);
}
  • 【ArduBlock】
13K024A11.png

产品相关推荐

Erweima.png

产品购买地址

基于Arduino互动电子积木套件

周边产品推荐

动手玩儿转Arduino书籍
Arduino从基础到实践

相关问题解答

Arduino 驱动安装失败?最全的解决办法
如何利用Xbee模块实现两个Arduino UNO控制器的通信

相关学习资料

爱上Arduino与爱上Processing的互动视频教程
Arduino 教程汇总
基于Arduino互动电子积木教学课程(第一节)
奥松机器人技术论坛