【EV3进阶】如何使用“第三方”传感器?

关于第三方传感器,在比赛中,一般是禁用的。
但我们日常做一些课题的时候,EV3的传感器性能和效果,往往不是那么理想。
而听到“第三方”传感器,很多人感觉好像挺遥远的,联想到需要开发之类的工作就望而却步了。
其实我们日常可以使用的EV3传感器,在外面非常多。性能也会好很多。
并且很多都无需拆机,无需开发,直接可用。
要使用它们,我们就要先来认识一下在编程中经常不用的一个模块。

原始传感器值
我们可以把这个模块理解为是所有连接到EV3输入端口上的设备,对EV3传输信息的读取模块。
看上去很简单,也只有两个控制部分。

左边的是端口,即,你的设备连接在哪个端口,就读取这个端口的值。
右边的是数据输出,即,这个设备获取的值,直接可以使用。
换句话说,你可以简单理解为:
如果你有一个设备,它的数据输出接口跟EV3的可以适配,那么接上后,就可以通过这个模块来读取这个设备所提供的值。
当然,如果你要自制一些传感器的话,还是需要对其他一些方面有所理解的。
比如EV3的通讯协议,就简单理解为是一个外国人(第三方设备)跑到一个陌生的国家,如果没用通用的语言,那就要会说这个国家(EV3)的语言好了。
这个我们不作延伸。
当使用了这个模块,读取出接入指定端口传感器的数据后,你就可以使用这些数据了。数据的使用方法,跟我们现有的传感器几乎是一样的。
你要做的,就是“定义”这些数据的使用方法。关于“定义”,我们在“贪吃蛇”的课程里面多次提到过。实则是同一个道理。
如果你手上没有第三方传感器,那么在EV3的编程软件里面,你也能找到不少官方传感器。

而这些官方传感器模块的数据定义,都是被编译过的。
我们可以用下面这个程序来尝试一下,看看原始传感器值和官方模块读取的值,有什么样的区别?(举例,超声波传感器)

这样应该更容易理解这些传感器的使用和定义方式。
关于第三方传感器,早在NXT时代,就有很多人做过一些开发,和跟lego合作定制,可以给大家举一些例子。
比较成熟的有HiTechnic公司的一些。

人体红外传感器
用在检测前方物体的位置。

很强大吧。

光电传感器
可以检测前方物体的大小变化,比如气球由大变小时候的体积变化。

角度传感器
这个是通过前面十字轴位的旋转,测量角度变化的。

加速度传感器
可以理解为是一种测量倾斜角度的传感器。可以通过垂直轴的数据变化(垂直的轴是重力的方向)。然后根据重力加速度的变化,倾斜的角度。
当然,现在还有一些在某宝上出售的自制第三方传感器。
比如,红外遥控器(很多个按钮哦!)

还有LED等,可以做出灯光矩阵,甚至可以连接PS游戏机的手柄,来控制EV3等等。
大家有兴趣,都可以尝试一下哈!
老丁介绍:非大神,只是一个喜欢乐高的普通教育工作者。也是一位父亲。若觉好,请分享给您的朋友们,感谢您的长期关注
上一篇:本田VSA感应器初始化设定
下一篇:直升机操纵杆传感器