宜昌城老张的博客

我工作在湖北宜昌市三峡大学,热衷基于桌面环境的机电模型制作。本博客探讨的内容已涉及到Processing互动艺术、Arduino单片微控制器、开源软件、机器人,欢迎回帖!

博客列表

TCS3200颜色传感器测试实验
发表于:2013-08-02 17:18:24 | 分类:Arduino基础
浏览( ) | 评论( )

    TCS3200颜色传感器是一款全彩的颜色检测器,包括了一块TAOS TCS3200RGB感应芯片和4个白光LED灯,TCS3200能在一定的范围内检测和测量几乎所有的可见光。它适合于色度计测量应用领域。比如彩色打印、医疗诊断、计算机彩色监视器校准以及油漆、纺织品、化妆品和印刷材料的过程控制。    通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。    由上面的三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS3200D 来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其它原色的通过。例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可

美国DIGI公司的XBee模块无线通讯实验
发表于:2012-08-26 10:32:37 | 分类:Arduino基础
浏览( ) | 评论( )

        Zigbee是一种短距离、低功耗的无线通信技术名称。这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言 之,ZigBee就是一种便宜的,低功耗的近距离无线组网通讯技术。    DIGI旗下的MaxStream公司是一家非常有名的无线通信元件制造商,其ZigBee产品上加了一个很贴切的名称XBee,XBee小型但却是一个功能完善的ZigBee收发器(即接收器/发射器),它是双向操作,可交替地发射或接收数据(半双工式)。    DIGI提供有两种版本,XBee和XBee PRO两版本都是有相同的功能和引脚兼容,唯一的差异是发射功率,XBee为最大2mW,而XBeePRO则最大60mW。我这次实验采用的是发射功率是1mW,

皮尺与便携式测距仪
发表于:2012-06-22 09:06:31 | 分类:Arduino基础
浏览( ) | 评论( )

    这个皮尺是老古董,国营上海井冈服装厂制,散发着一种革命浪漫主义气质,儿时母亲用它为我量体裁衣,放在口袋里,随时丈量着尺寸。时光随着日月的交替,旧时的人们逐渐成长、变老,但未来科技却不断向我们走来,对于测量距离这样的事情,也有了新颖的解读。于是,这时的我,用Arduino系统搭建了一个便携式超声波测量仪,也放在口袋里,随时扫描着前方的物体,及时了解我们的距离。   这个作品用到了LCD4884来显示距离,LCD4884的使用见《 我家的温湿度测量计 》,网址: http://www.eefocus.com/zhang700309/blog/12-06/280255_7a0b3.html。至于用于距离检测的超声波传感器,我曾写过多篇文章介绍。《动手制作超声波测距仪》,网址: http://www.eefocus.com/zhang700309/blog/11-11/233953_e0cf6.html 。《 超声波传感器与舵机结合实现扇面测距 》,网址:http://www.eefocus.com/zhang700309/blo

我家的温湿度测量计
发表于:2012-06-15 09:33:35 | 分类:Arduino基础
浏览( ) | 评论( )

      盛夏来了,又热又潮,不知道家里的气候如何,想着买个温湿度计,但是物价飞涨,工资不涨,没钱买啊!不如自己做个,应该不难,于是开始动手制作。     这个作品的两个主角是数字温湿度传感器 DHT11和LCD4884 Shield 点阵液晶显示器,好像很简单,就是把DHT11的温湿度值采样到Arduino控制器里,然后对采样值进行处理,按照格式发送到LCD4884显示器中显示出来。我也就花了1天半的时间搞出来的。    LCD4884显示器板子直接插在Arduino UNO控制板的母槽引脚上,它与Arduino板子形成层叠关系,但是并未把Arduino可用的端口挡住,因为LCD4884板子上把Arduino的5个模拟端口和6个数字端口引出来了,并布局到LCD4884板子上,以便使用。 于是DHT11温湿度传感器用并排的三根杜邦线插在了模拟端口5上。     把Arduino控制板和DHT11传感器用双面胶带粘在电池盒背面,再把电池盒的电源插头插到Arduino UNO的电源插

夏普GP2D12红外线测距传感器与LCD1602液晶
发表于:2012-04-05 15:28:37 | 分类:Arduino基础
浏览( ) | 评论( )

     这个实验任务是:把GP2D12红外线测距传感器采集的数据,通过Arduino控制器的算式转换为实际距离值,再显示在集成了I2C接口的LCD1602液晶面板上。    夏普GP2D12红外线测距传感器,是一种性价比较高的模拟量传感器。如何把这个传感器所测的模拟量数据,采集和算式处理,最终获取实际距离呢?我下面就会讲。      上图就是GP2D12红外线测距传感器的电压值与距离值的关系曲线,从这个曲线可以看出,电压输出与距离成反比,而且是非线性关系。   根据上图关系曲线,大约关系为10cm距离时有2.55V输出,80cm距离时有0.42V输出。可以通过该曲线拟合出电压值与距离值的数学关系式,但是这个关系式里的距离是参考距离值,实际距离值=(参考距离值-0.42)cm,另外由于Arduino的模拟量采样命令analogRead(),采样的数据范围是0至1023,对应的电压范围是0至5V,每格数据代表0.0049V,于是读取的有效数据应该由86(0.42V)至520(2.54

两个Arduino之间的无线通讯实验
发表于:2012-03-10 08:47:59 | 分类:Arduino基础
浏览( ) | 评论( )

  这个实验用到的RF无线数传套件型号为APC220 ,它是国内一家公司出品的,能够无线通讯的距离达1000米,淘宝很容易买到。APC220套件是高度集成半双工微功率无线数据传输模块,它集成了高速单片机和高性能射频芯片和TTL串口接口,不仅可以实现双Arduino控制器之间的无线通讯,而且配合1个USB转换器可以实现电脑与Arduino单片机之间的无线通讯。     APC220无线数传说明书请下载:APC220使用手册.pdf     用这个套件首先要安装CP210x_VCP_Win2K_XP_S2K3 USB转RS232的驱动,安装完驱动,就可以用RS232串口协议进行无线通信,我感觉就像用RS232有线通信一 样,搞无线通信。这个套件购买地址:http://item.taobao.com/item.htm?spm=1101*r1F.3-1mJ7Y.h-5h6gmz&id=227289063&。请看两个Arduino之间的无线通信实验视频: 安装CP210x_VCP_Win2K_XP_S2K

新车间Arduino图形化编程软件ArduBlock的介绍(下)
发表于:2012-02-07 15:12:40 | 分类:Arduino基础
浏览( ) | 评论( )

      我写了一篇介绍新车间的ArduBlock软件,很荣幸ArduBlock官网马上推荐了这篇文章,见网址:http://blog.ardublock.com/zh/2012/02/03/introduction-of-ardublock-in-chinese/,这就是互联网的力量,把自己用心写东西,扩散出去,让有相同爱好的创客,能够分享你的作品,同时你也能通过博客、论坛去了解别人的作品,给自己以启发。    我感觉看相关博客和论坛帖子,这种交流方式远比QQ聊天效率高,博客和论坛帖子是创客们思考和加工过的内容,而QQ随意性更大,更像是速食性的快餐,没啥营养。QQ群已经成了技术宅男寻找同类,排解寂寞的场所。     新车间Arduino图形化编程软件ArduBlock的介绍(上):http://www.eefocus.com/zhang700309/blog/12-02/237994_76dea.html ,文章介绍的ArduBlock编程实例是关于如何实现数字量输入与输出之间的交互,而现在写的&ldquo

新车间Arduino图形化编程软件ArduBlock的介绍(上)
发表于:2012-02-03 17:03:05 | 分类:Arduino基础
浏览( ) | 评论( )

  Make杂志主办的2011年纽约Maker Faire 展会在科学会馆举办,在几条街区外就可以看到这里高耸的火箭。本来就充满科普装置的空间塞满创客后,就像一个爱丽丝仙境,走在其中会不经意地被古灵精怪的作品打动,驻足赞叹创客们的精彩表演。       在这次展会上,Arduino尤其抢眼,Arduino 团队高调出场,发布了一系列Arduino产品,包括低端的Leonardo,到未来式96MHz怪物DUE,以及新的Arduino1.0编程软件,机器人平台等。Arduino的核心开发团队成员Massimo还特别感谢了上海新车间创客开发的图形化编程环境ArduBlock,肯定了来自中国创客的贡献,让现场中国观众有点Hold不住了!   位于上海市长宁区安化路76号301室的新车间是国内第一家创客空间,她为创客们提供了一个很好的交流场所,新车间网址:http://xinchejian.com/?lang=zh。新车间的ArduBlock软件受到了国际同道的好评,这篇文章我来详细介绍下ArduBlock的安装与使用。ArduB

Arduino主从机之间的I2C通讯实验
发表于:2012-01-05 11:27:21 | 分类:Arduino基础
浏览( ) | 评论( )

      I2C总线定义I2C(‘intel’ -Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。在主从通信中,可以有多个I2C总线器件同时接到I2C总线上,通过地址来识别通信对象。    I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既可以是主控器(或被控器),又可以是发送器(或接收器),这取决于它所要完成的功能。    Arduino通讯命令见网址:http://www.arduino.cc/en/Reference/Wire,我通过这次IIC通讯实验把这10个I2C通讯命令全部应用到了。    我现在采用老版本A rduino-0018

基于Labview和proteus的电机监控仿真程序下载
发表于:2011-11-06 16:42:43 | 分类:Arduino基础
浏览( ) | 评论( )

       过去,我曾经通过仿真来学习Labview和51单片机,现在搞实物制作了,如乐高、Auduino等,采用仿真的方法学习成本低,效果也不错。现在我拿出三个基于Labview和proteus的电机监控仿真实例,研讨下,程序可以下载。这三个实例,在纯软件环境下,Labview和51单片机上下位机联合监控proteus软件里的三种电机,1、直流电机;2、舵机;3、步进电机。直流电机仿真画面屏拷: 程序下载:直流电机正反转.rarRAR文件里有Labview上位机程序、proteus下位机电气原理图和keil单片机51程序。舵机仿真画面屏拷:程序下载:舵机.rar步进电机仿真画面屏拷:程序下载:步进电机正反转(圈数可控)主动写、连续读.rar 基于Labview和Proteus的特性,利用Proteus仿真下位机运行,而Labview实现上位机对下位机运行的监控,两软件采用虚拟串口进行 RS-232串口通讯,在纯软件环境下,完成基于Labview和51单片机上下位监控系统的组建。这种方法成本低,效率高,可以方便地应用到