APP下载

制作Arduino测斜仪(上)

消息来源:baojiabao.com 作者: 发布时间:2024-11-29

报价宝综合消息制作Arduino测斜仪(上)

在初中级数学科中三角比(正弦、余弦及正切)的课堂,学生可以了解到直角三角形的角与边的关系。现在可以利用这些理论,来计算一些有关距离或高度的问题,例如找出一座大厦的高度,或估计一条河的阔度等。

三角比课题的其中一个延伸活动是制作测斜仪,学生可以利用量角器、硬卡纸、饮管、幼绳及重物等物资制作。使用者需以眼睛望向所要量度物件的最高点,从而在量角器上,估计出物件的仰角,然后运用三角比的公式来计算出物件的高度。然而目测方法较不准确,所估计出的角度仰角,往往误差较大,而令计算出来物件的高度有颇大的偏差。

今次的设计文章会描述如何运用 Arduino 微处理器、三轴加速度计感测器及激光发射器来制作测斜仪,从而得出一个较准确的量度高度的工具。

三角比课题简介

制作中,会运用到初中级数学科中的三角比知识。假设是有一个同学站在礼堂的一个位置,与礼堂墙壁的距离是 a ,我们可以构想出一个直角三角形, ∠ABC 为该学生望向礼堂最高点的仰角为 x ,就可以用三角比的方法来找出礼堂的高度,概念图如下:

另一方面,从下面的公式,如果知道仰角 x 及同学站立位置与礼堂墙壁的距离 a ,我们就可以得出礼堂的高度。

Photo2
Photo15
Arduino 测斜仪设计

在文章的最初,提及到以往利用量角器制作的测斜仪,因为是利用目测的方法估计出的仰角,以致误差较大,使计算出来物件的高度有颇大的偏差。今次运用的五项电子装置,分别有 Arduino UNO 及以下四项,相关装置用途如下。

A. 激光发射器

利用激光发射器将光束射向所需要量度物件的最高点,用来量度公式中的仰角 x 。激光发射器的使用是非常简单,只需要接上 Arduino 的电源便可以发射光束。在实验中,会把它连接到 Pin11 ,因为这是一个脉冲宽度调变 Pulse Width Modulation ( PWM ),方便调节光束的亮度。

p80

B. 三轴加速度计感测器

加速度计的感测器原理是基于地球表面的重力加速度是有方向性的,当感应器倾斜的时候,芯片会根据重力的改变来测量三轴倾斜的变化,然后输出三轴的类比数值。

不过,此习作中,只需使用 x 轴的讯号,但要留意的是不能直接使用接
收讯号,要需要先将这些讯号校准( Calibration ),范围由 0° 至 90° 。校准的方法如下,将感测器平放在一个正方体上面(仰角为 0° )并放在一个水平面上,记下 x 轴的类比数值,然后将正方体转动 90° ,再次记下 x 轴的类比数值,最后在程式中将 0° 至 90° 映射到刚才记录到的两个数值上,这个校准步骤变完成了。

三轴感应器正面,能看到 芯片及标志。

三轴感应器正面,能看到芯片及标志。

背面有接线说明。

背面有接线说明。

C. Keypad

在使用这个 Arduino 测斜仪工具时,可以利用 4×4 键盘,将水平距离输入至 Arduino 。在 Arduino 中使用键盘是非常简单,只需加入 Keypad  Library 便可,但请注意,确定输入的数据类型是“数字”,而不是“字串”,因为我们需要运用这个输入来计算出物件高度。 Keypad 的接驳方法,键盘的接是 8 / 7 / 6 / 5 /4 / 3 / 2 / 1 ,再接驳到 Arduino 的 5 / 4 / 3 / 2 / 9/ 8 / 7 / 6 接口。

数字按键键盘。

数字按键键盘。

D. LCD液晶显示器

最后,需要利用 LCD 液晶显示器来显示输入的水平距离,量度到的仰
角,及想求出的物件高度。我们所使用的是 1602 液晶模组,即是包括两行,每行有 16 个字元位置的显示器,在此题目中已十分足够应用。为方便制作,运用背面已经焊接好 I2C 界面的控制板可直接接驳显示器,只需要接驳四条电线就可以, LCD 液晶显示器的接驳方法是 LCD 液晶显示器的接口按序是 VCC / GND / SCL / SDA ,分别接驳到 Arduino 的 5V / Gnd / A5 / A4 接口。

LCD wiring 正面有 16 个字元位置的显示器。

LCD wiring 正面有 16 个字元位置的显示器。

LCD wiring 背面是接线口。

LCD wiring 背面是接线口。

下星期待续……

2017-12-24 00:00:00

相关文章