大家好,通过前几期文章的介绍,我们已经对机器人的大脑、五官、神经中枢和心脏有了大致的了解。在 《机器人的神经中枢(扩展板类)》一文的“功能整合型扩展板”中也介绍了一些显示类扩展板,本期再为大家细致讲解显示模块,这些显示模块构成了机器人的“表情”。说到显示模块,大家可能最先联想到计算机显示器。显示器是计算机的I/O 设备也就输入/ 输出设备,它是一种将电子文件通过特定的传输设备显示到屏幕上的工具。类似于计算机显示器的定义,本文介绍的机器人显示模块是指将控制器发出的特定信号转换为光影、数字、图形图像的设备。从数码管显示简单的数字,到LED 点阵及LCD 显示丰富的字符、图像,再到现在非常流行的电纸书等,显示模块种类繁多,应用广泛。现在我们就针对当下流行的几款显示模块进行介绍,其中包括数码管、LED 点阵、RGB LED 点阵、LCD、电子纸以及发光线。
数码管
我们学习研究Arduino、树莓派或者其他控制器时,一般最先进行的一个实验就是点亮LED。在数字逻辑中,单个LED 只能控制亮或灭,对应呈现的只是1 和0 两种状态,表达的信息十分有限。但将8 个LED 按照一定顺序排列、呈“8”字形封装在一起,便组成了常见的LED 数码管。组成“8”字形的每一个LED,我们称之为“段”,一般而言,数码管按段数可分为7 段数码管和8 段数码管,一段对应着一个LED,8 段数码管比7 段数码管多一个LED,也就是多一个小数点(dp),这个小数点可以更精确地表示数码管想要显示的内容。8 段数码管的每段按照一定的顺序标注。
当然有些LED数码管会按照实际需要增加“段”或减少“段”。在实际应用中,一般将多个数码管封装在一起,每组所包含的数码管个数称之为“位”,常见的封装形式有1 位、2位、4 位、6 位、8 位等。LED 数码管要正常显示,就要用控制器或驱动电路来驱动数码管的各个段,从而显示出我们需要的数字、字母等,根据LED 数码管驱动方式的不同,可以分为静态式和动态式两类。数码管静态驱动显示时,每个数码管的每一个段码都由控制器的一个I/O 口进行驱动,或者使用特定的转换器进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O 口过多。要知道一个Arduino UNO 控制器可用的数字I/O 口只有14 个,而使用I/O 口多的控制器无疑会增加成本。所以实际应用时必须依靠驱动器进行驱动,这就增加了硬件电路设计的复杂性。
数码管动态驱动显示是目前应用最为广泛的一种显示方式,是将所有数码管相同名字的段连在一起,共同连接一个I/O 口,而每个数码管的“位”选通由各自独立连接的I/O 口控制。当控制器输出字形码时,所有数码管都接收到相同的字形码,但究竟是哪个数码管会显示出字形,取决于控制器对“位”选通端电路的控制。所以我们只要打开需要显示的数码管的“位”选通端,这一位就会显示出字形,没有选通的数码管也就不会发光显示。通过分时轮流控制各个LED 数码管的“位”端,各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1 ~ 2ms,由于人眼的视觉暂留现象以及发光二极体的余辉效应,尽管各位数码管并非同时点亮,但只要扫描的速度足够快,给人的感觉就是一组同时显示的稳定数据,而不会出现闪烁。动态显示效果和静态显示是一样的,但动态显示能够节省大量I/O 口,并且每一时刻只会有一只数码管点亮,功耗也就更低。虽然动态驱动LED 数码管能够节省控制器I/O 资源,但我们还是希望有更加便捷的使用方式,那就是将LED 数码管与驱动芯片集成在一起,使用特定的通信协议与控制器进行连接通信。比如SPI LED 数码管扩展显示模块,除去电源正负极引脚,只需与控制器的3 个I/O 引脚相连接,编写程序即可实现显示功能,可以使用SPI数码管显示模块搭建的“定时炸弹”。除了SPI LED 数码管扩展显示模块,使用I2C 接口的4 位共阳数码管也是不错的选择。它只需要4 根数据连接线,除去电源与地线,另外两根为SCK与SDA 接口,即时钟与数据接口,仅占用两个I/O 口。而且只需要调用库函数进行编程,便可实现对数码管的控制,来显示数字和字母。
RGB LED 点阵
大家知道LED 有各种不同的颜色,有一类LED 自身就可以发出不同的颜色,有些甚至能够显示多达65536 种不同色彩,我们称之为RGBLED。RGB LED 点阵组成方式及驱动原理类似单色LED 点阵,不同之处在于每个灯珠是由3个独立的红色、绿色和蓝色LED 封装在一个外壳内而成,通过控制每个颜色的LED 发出不同的亮度,从而使不同饱和度的光混合出不同的颜色。
LED 点阵
介绍完LED 数码管,你可能会觉得小小的LED 经过排列也可以显示出实际意义的数字,非常神奇,那么看完即将登场的LED 点阵,你可能会更加感叹人类非凡的智慧。LED 点阵屏由LED 排列组成,以灯珠亮灭来显示文字、图片、动画、视频等,是模块化的显示器件,通常由显示模块、控制系统及电源系统组成。LED 点阵显示屏制作简单,安装方便,已被广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等。LED 点阵规格繁多,大多按实际需求定制。无论点阵屏幕大小、LED 数量多少,控制原理都一样,大屏幕显示系统一般是将由多个LED 点阵小模块以搭积木的方式组合而成,每一个小模块都有自己独立的控制系统,组合在一起后由一个总控制器控制各模块进行显示,这种方法简单、容易维修。以我们常见的8×8 点阵为例,来说明其工作原理。8×8 点阵由64 个发光二极管组成,每个发光二极管都放置在行线和列线的交叉点上,当对应的某一行置高电平,某一列置低电平,则相应的二极管就会点亮。类似LED 数码管的驱动方式,在LED 点阵显示系统中,各模块有静态和动态两种显示方式,目前普遍使用的是动态显示方式。在前面我们已经分析过,使用静态驱动非常占用控制器的资源,即便使用动态扫描驱动,占用的资源依然很多。而使用SPI 接口的8×8 LED MatrixModule点阵模块接线就很简单了,并且还可以用多个组合连接进行拓展。
LCD
LCD是 Liquid Crystal Display 的简称,也就是液晶显示屏的意思,液晶从形状和外观上看都是一种液体,但它的分子结构又表现出固体的形态。当液晶受到外界电场影响,其分子会产生精确、有序的排列,如果对分子的排列加以适当控制,那么液晶分子将会允许光线穿透。LCD 的构造是将液晶盒放置在两片平行基板玻璃中,下基板玻璃上放置薄膜晶体管,上基板玻璃上放置滤光片,通过薄膜晶体管上的信号与电压的改变来控制液晶分子的转动方向,控制每个像素点能否射出光线,从而显示出图像。我们在学习使用液晶显示模块的时候,第一个接触的应该是经典的LCD1602 字符液晶模块,1602 是16×2 的意思,也就是它能够显示每行16 个,共2 行字符。1602 液晶模块按照数据手册内容进行硬件
连接时,除去电源、地、背光调节等,通常还需要连接RS、R/W、E、DB0 ~ DB7共计11 个引脚,而且要按照读写时序进行指令、数据读写操作。前面提到过,控制器的I/O 引脚是有限的,为了实现各种功能,控制器可能会连接几个电子模块,如何简化电路连接、节省I/O 接口资源是我们必须考虑的。而I2C 的LCD1602 字符液晶显示模块就可以解决上述问题,因为它只需两根线就能够实现数据通信,还可以挂其他I2C 设备。对于Arduino 初学者来说, 就再也不必为繁琐复杂液晶驱动电路连线而头疼了,只需通过4P 传感器连接线连接,经过Arduino 控制器编程后,便可轻松实现标识标语、传感器数据的记录显示。接线简单、开发便利的使用串口通信的SerialLCD1602 模块就采用了这样的极简设计。除了1602 液晶显示模块, LCD2004及LCD12864 液晶模块也是比较常见的。LCD2004 能显示每行20 个、共4 行字符, 较1602 模块显示内容多了一倍有余,而 12864 液晶显示模块的显示区域则由128×64 共计8192 个点组成,因此较1602 模块与2004 模块而言,12864液晶显模块能够显示更丰富的内容。前面介绍的是单色液晶模块,如果需要显示彩色图形和图像,我们还会使用彩色液晶模块,其控制原理与单色液晶模块类似。
电子纸
说起Kindle,相信喜欢使用“电子书”阅读的朋友都不会陌生,其核心技术便是“电子纸”。电子纸也叫数码纸,英文是E-paper,它是一种超薄、超轻的显示屏。电子纸的视觉感观几乎和纸完全一样,既能免于视觉疲劳,又可以像我们常见的液晶显示器一样不断转换,刷新显示内容。电子纸在不翻页时可以保持原有显示内容,只有在翻页刷新时才会耗电,所以比液晶显示器省电很多。电子纸显示设备通常都非常薄,重量也相当轻。传统LCD 由于结构的原因,其厚度不可能太薄,重量也不会太轻。而电子墨水显示设备的硬件结构相当简单,它的厚度可以做到1mm 左右,还不到LCD的一半。此外,电子墨水的适用范围相当广泛,它不仅可用于玻璃表面,还可以应用于塑料等材质表面,所以它不会像LCD显示屏那样脆弱。电子纸常用于代替常规显示设备、移动通信等手持设备显示屏,目前广泛应用于便携式电子书等,它可以提供与传统书刊类似的阅读实验。
EL发光线
除了常见的LED、LCD 等显示模块外,EL 发光线正在被人们慢慢认知。说起EL发光线,大家可能不太了解,但提起冷光霓虹管,想必大家会略有耳闻。EL 发光线发光颜色丰富,使用时自身并不发热,而且防水,在实际应用时还能任意弯折、剪裁、拼接成各种形状。现在常用于家居装饰、城市美化等领域。既然EL 发光线有如此多的优点,那怎样通过Arduino 来控制EL 发光线呢?我们可以使用EL 扩展板,它可以同时控制4 个EL 设备,适合室内装饰项目或制作舞台效果,并且控制方法就像控制LED 一样简单。使用PWM 技术还可以制造出多彩而华丽的灯光效果。另外,EL 扩展板配备了专用的EL逆变器,它可以驱动长达15m的EL灯条,足够完成各种各样复杂的图案的显示。无论是数码管、LCD 还是电子纸、EL发光线,在实际应用中,大家可以根据自己的需求,选择适合的显示模块为机器人添加生动的表情。下一期将为大家介绍机器人的“语言”,告诉你机器人是如何进行交流的。敬请期待。
----------------------------------------------------------------------------------------------------------------
奥松机器人官网:www.robotbase.cn
微信号:搜索公众号“奥松机器人”
QQ群: 271230889(讨论,解惑)
微博:@奥松机器人基地
----------------------------------------------------------------------------------------------------------------
温馨提示:予人玫瑰,手留余香;如果你喜欢这篇文章,不妨转发推荐给你身边的朋友!
近期新闻
热门新闻
奥松智能微信