物联网技术入门与实践 课后习题答案

  • 格式:docx
  • 大小:178.77 KB
  • 文档页数:10

习题答案

第1章 物联网技术概述

1.简述物联网定义,你对物联网有何理解?

把所有物品通过射频识别(RFID)和条码等信息传感设备与互联网连接起来,实现智能化识别和管理。我的理解是物联网是新一代信息技术的重要组成部分,基本制,还是互联网只是其用户端延伸和扩展到了任何物品与物品之间进行信息交换和通信的网络。

2.简述物联网系统技术架构?

物联网可分为三层:感知层、网络层和应用层。

5.物联网安全体现在哪几个方面?

传感器的本体安全问题、核心网络的信息安全问题、物联网的加密机制问题。

6.生活中自动识别技术应用有哪些?

阅读器、电子标签及条形码。

第2章 物联网硬件电路技术

1.选择题

(1)电荷的基本单位是( C )。

A.安秒 B. 安培 C. 库仑 D. 千克

(2)1安培等于( B )微安。

A. 103 B. 106 C. 109 D. 102

(3)电路主要由负载、线路、电源、( B )组成。

A. 变压器 B. 开关 C. 发电机 D. 仪表

(4)电流是由电子的定向移动形成的,习惯上把( D )定向移动的方向作为电流的方向。

A. 左手定则 B. 右手定则 C. N-S D.正电荷 E. 负电荷

(5)电流的大小用电流强度来表示,其数值等于单位时间内穿过导体横截面的( B )代数和。

A. 电流 B. 电量(电荷) C. 电流强度 D. 功率

(6)导体的电阻不但与导体的长度、截面有关,而且还与导体的( D )有关。

A. 温度 B. 湿度 C. 距离 D. 材质

(7)半导体的电阻随温度的升高 ( C )。

A. 不变 B. 增大 C. 减小 (8)串联电路中, 电压的分配与电阻成( A )。

A. 正比 B. 反比 C. 1:1 D. 2:1

(9)并联电路中, 电流的分配与电阻成( B )。

A. 正比 B. 反比 C. 1:1 D. 2:1

(10)串联电路具有以下特点( C )。

A. 串联电路中各电阻两端电压相等

B. 各电阻上分配的电压与各自电阻的阻值成正比

C. 各电阻上消耗的功率之和等于电路所消耗的总功率

D. 流过每一个电阻的电流不相等

(11)电容器并联电路有如下特点( A )。

A. 并联电路的等效电容量等于各个电容器的容量之和

B. 每个电容两端的电流相等

C. 并联电路的总电量等于最大电容器的电量

D. 电容器上的电压与电容量成正比

(12)三极管基极的作用是( B )载流子。

A. 发射 B. 输送控制 C. 收集 D. 放大

(13)双极型晶体管和场效应晶体管的控制信号为( C )。

A. 电压 B. 电流

C. 双极型为电压、场效应为电流 D. 双极型为电流、场效应为电压

(14)二极管的主要特性就是( C )。

A. 整流 B. 稳压 C. 单向导通 D. 反向击穿

(15)电路由( A )和开关四部分组成。

A.电源、负载、连接导线 B.发电机、电动机、母线

C. 发电机、负载、架空线路 D.电动机、灯泡、连接导线

2.判断题

(1)纯电阻单相正弦交流电路中的电压与电流,其瞬间时值遵循欧姆定律。( √ )

(2)电动势的实际方向规定为从正极指向负极。( × )

(3)没有电压就没有电流,没有电流就没有电压。( × )

(4)人们常用“负载大小”来指负载电功率大小,在电压一定的情况想,负载大小是指通过负载的电流的大小. ( √ )

(5)电容C是由电容器的电压大小决定的。 ( × )

3.简答题

(1)简述单片机的概念、特点和产生的原因。

单片机也叫微控制器,是一个将微型计算机系统制作到里面的超大规模集成电路芯片,有体积小、重量轻、结构简单、可靠性高、工作电压低、功耗低、价格低廉和性价比高的特点,特别适用于嵌入到其他仪器设备当中来使用。

通用计算机由于体积、成本和功耗的限制,无法直接安装到很多设备中去使用。当一台普通计算机安装到智能手机中的景象,这将导致手机的体积、成本、重量等指标变的令人无法接受,为满足实际应用中的需求出现了单片机。

(2)列举几个身边单片机应用的实例。

一个液晶显示的数字式电脑温度计,LED显示电脑电子钟、交通灯控制器单片机演奏音乐液晶显示复杂自制图形、电子万年历等。

(3)Arduino平台的特点

Arduino平台的特点有:

①跨平台

Arduino IDE可以在Windows、Macintosh OS X、Linux三大主流操作系统上运行,而其他的大多数控制器只能在Windows上开发。

②简单清晰

Arduino IDE基于processing IDE开发。对于初学者来说,极易掌握,同时有着足够的灵活性。Arduino语言基于wiring语言开发,是对 avr-gcc库的二次封装,不需要太多的单片机基础、编程基础,简单学习后,你也可以快速的进行开发。

③开放性

Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里可以任意修改原始设计及相应代码。

④发展迅速

Arduino不仅仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关注创意与实现,更快的完成自己的项目开发,大大节约了学习的成本,缩短了开发的周期。

第3章 物联网软件开发技术

1.结合线路图,编写代码实现Arduino 用两个按键分别控制两个LED灯点亮。

#define LED 3 //定义 led_1 I/O number is 3

#define KEY 2 //定义 key_1 I/O number is 2

#define LED2 5 //定义 led_2 I/O number is 5

#define KEY2 4 //定义 key_2 I/O number is 4

int KEY_NUM1 = 0; //key_1 value (按键键值存放变量,不等于1说明有按键按下)

int KEY_NUM2 = 0; //key_2 value

void setup()

{

pinMode(LED,OUTPUT); //定义 led_1 I/O is OUTPUT

pinMode(KEY,INPUT_PULLUP); //定义 led_1 I/O is INPUT_PULLUP

pinMode(LED2,OUTPUT);

pinMode(KEY2,INPUT_PULLUP);

Serial.begin(300);

}

void loop()

{

ScanKey(); //按键扫描程序,当按键按下时候,该子程序会修改KEY_NUM的值

ScanKey2();

}

//按键1扫描程序

void ScanKey()

{

KEY_NUM1 = 0; //清空变量

if(digitalRead(KEY) == LOW) //有按键按下

{

delay(20); //延时去抖动

if(digitalRead(KEY) == LOW) //有按键按下

{

KEY_NUM1 = 1; //变量设置为1

while(digitalRead(KEY) == LOW); //等待按键松手

}

Serial.println(digitalRead(LED));//串口输出当前LED灯的状态

}

if(KEY_NUM1 == 1) //是否按键按下

{

digitalWrite(LED,!digitalRead(LED)); //LED的状态翻转

}

}

//按键2扫描程序 void ScanKey2()

{

KEY_NUM2 = 0;

if(digitalRead(KEY2) == LOW)

{

delay(20);

if(digitalRead(KEY2) == LOW)

{

KEY_NUM2 = 1;

while(digitalRead(KEY2) == LOW);

}

Serial.println(digitalRead(LED2));

}

if(KEY_NUM2 == 1)

{

digitalWrite(LED2, !digitalRead(LED2));

}

}

2.Arduino编程,控制让两盏led灯各自闪烁,一盏灯亮1秒然后灭1秒,并保持此频率闪烁;另外一盏灯亮3秒然后灭3秒,并保持此频率闪烁。

#include

// 定义LED的引脚

#define LED_PIN_A 1

#define LED_PIN_B 2

// 时间定义宏

#define TM_MS(n) (n)

static uint16_t timerCntA;

static uint16_t timerCntB;

void TimerCbk (void);

void setup()

{

pinMode(LED_PIN_A , OUTPUT);

pinMode(LED_PIN_B , OUTPUT);

// 设置为每1ms调用一次TimerCbk函数。

MsTimer2::set(1, TimerCbk);