宜昌城老张的博客

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

博客列表

Processing互动媒体制作软件介绍
发表于:2011-12-14 14:53:10 | 分类:Processing与Arduino的互动艺术
浏览( ) | 评论( )

     Processing是由美国麻省理工学院媒体实验室( M.I.T. Media Laboratory )美学与运算小组( Aesthetics Computation Group )的Casey Reas与Ben Fry创立的一款专为设计师和艺术家使用的编程语言,通过它无需太高深的编程技术便可以实现梦幻般的视觉展示及媒体交互作品。同时,也可结合Arduino等相关硬件,制作出回归人际物理世界的互动系统。    Processing编程不仅仅是计算机技术,它也可以创造出令人不可思议的艺术作品。     我用Processing软件制作了一个“双面花布”的作品如下图:      作品操作方法:点击鼠标左键,显示双面花布的正面,同心圆图案开始闪耀流动,松开左键,图案静止;点击鼠标右键,显示双面花布的反面,方块图案像莫尔条纹一样移动,松开右键,图案静止。Processing软件的官方网站: http://www.process

【征文NO.6】我的2011,乐高研讨年
发表于:2011-12-08 10:23:54 | 分类:NXT-G与乐高机器人
浏览( ) | 评论( )

     老板组织征文活动,我也来凑凑热闹。    在科学大发展进的今天,确实要淡定,到底自己内心感兴趣的事情是什么?到底如何使自己不浮躁?到底如何根据自身情况踏踏实实地做些事?我选择桌面机电作品创意制作这条路,并把一路走来的所看所感记录下来,写成博客,与同道分享。博客地址:http://www.eefocus.com/zhang700309/blog/。    桌面机电作品创意制作在国外是很流行的,相关的网站和杂志很多,比如美国的MAKER,SERVO杂志。我的这篇文章也说明了这一“从个人电脑到个人制作”潮流,文章网址:http://www.eefocus.com/zhang700309/blog/11-11/234274_b5652.html。   个人制作当然需要相关工具,比如LEGO、Arduino等,在最近的一年多的时间,我都是用乐高工程积木来完成我的创意作品,发表成博文,以示网友,受到了不少关注,在此非常感谢大家的认同。对于乐高不要小看它,为什么要把它当玩具看待,它是原型作品

基于Google App Inventor软件的Android手机遥感遥控乐高机器人
发表于:2011-12-07 11:29:24 | 分类:Andriod手机与机器人
浏览( ) | 评论( )

       请先看第一篇文章:Android手机的Google App Inventor编程入门   文章地址:http://www.eefocus.com/zhang700309/blog/11-12/235835_d9ad0.html 所有图片都可以双击放大!    第一篇文章讲解了,如何创建Google App Inventor编程环境;如何让Android手机与个人电脑同步联机;和如何进行App Inventor程序编制与运行。有了这些基础,再看这篇文章,容易理解些。   这篇文章主要讲如何编制程序,让Android手机读到乐高NXT机器人的传感器信息,如何让Android手机能够遥控驱动NXT伺服电机,以使机器人执行各种动作。    第一篇文章讲解了如何让Android手机与个人电脑同步联机,但是遥感遥控NXT机器人还要做到让Android手机与NXT控制器的联机,以下是具体步骤:1、确认NXT控制器的蓝牙是否已开启。2、Android手机→设置&r

Android手机的Google App Inventor编程入门
发表于:2011-12-04 20:06:18 | 分类:Andriod手机与机器人
浏览( ) | 评论( )

      Google App Inventor为全云端的开发环境,所有的动作大家在浏览器上完成(建议使用谷歌浏览器),是全图形界面编程,可以让使用者完全不需写任何文本式程序码即可完成应用程式开发。一、创建Google App Inventor编程环境    您需要做三件事,来创建Google App Inventor编程环境:    1、 安装google浏览器,要注册google的帐号,如下图:    2、测试您的电脑上是否可正确运行的Java(测试页面)    http://www.java.com/en/download/testjava.jsp 如果您的电脑的Java不在运行,就直接在该网页下载并安装Java。 3、安裝Google App Inventor软件    Google App Inventor的下载网址:http://dl.google.com/d

鼠标遥控乐高机器人的LabVIEW编程方法
发表于:2011-11-30 16:38:15 | 分类:LabVIEW与乐高机器人
浏览( ) | 评论( )

    图1 鼠标遥控乐高机器人全景图    鼠标除了我们用来上网,写本子,打CS游戏,还能做什么?看看下面的视频,哈哈,鼠标还能这样用!图2  6D游戏鼠标    要用鼠标遥控乐高NXT机器人,首先需把鼠标的按键和滚轮信息读取到PC机的LabVIEW软件中。我制作了一个鼠标数据采集程序,下图两图分别是这个程序的前面板和框图程序。图3 鼠标数据采集前面板 图4 鼠标数据采集框图程序(双击图片,可以放大)鼠标数据采集请下载:鼠标接口测试.rar    鼠标数据采集框图程序中,从左到右有四个与鼠标数据采集相关的VI,最左边的是“Query Input Devices”VI,可以产生“鼠标信息”簇,显示在前面板上,看到图2中鼠标中的按键有5个了吗?有3个轴信息,鼠标下面的光电感应包含了“水平”和“垂直”轴坐标量,这两个轴,这次实验没有用上,用到的是另外一个轴信息,就是“滚轮”轴坐

LEGO原型机械手车与iRobot军用机械手车的视频对照
发表于:2011-11-30 15:28:27 | 分类:LabVIEW与乐高机器人
浏览( ) | 评论( )

      LEGO Mindst orms NXT机器人是由丹麦乐高公司和美国麻省理工学院的媒体实验室(Media Lab)等共同开发的一种可编程积木套件。自1998年上市以来,便受到国外教育和科研机构的广泛关注,Mindstorms NXT已经被全球25, 000个以上的机构采用。    作为创新设计的工具。美国麻省理工学院、卡耐基-梅隆大学、西点军校及美国太空总署、飞利浦设计院等研究型大学与机构导入LEGO NXT机器人作为其重要的研究工具并获得了令人满意的结果。    LEGO NXT套件不只是作为构建机器人的学习工具,实际上也是设计师用来构建产品的具有视觉和触觉功能的产品原型之最佳选择。我也用LEGO工程积木搭建了机械手车的原型,并用鼠标和微软XBOX 360手柄遥控它,命令它完成抓取和搬运物体的动作。    看看下面用鼠标遥控LEGO机械手车的视频:    通过在乐高原型机械手车的基础上,进一步材料选择,强度校核,功能扩展和工艺制造,就可以研发出实用的机器人产

智能机械手车的寻物取物表演(NXC)
发表于:2011-11-25 11:28:59 | 分类:C语言与乐高机器人
浏览( ) | 评论( )

     这个机械手车最聪明,它可以通过超声波传感器扇形扫描的方式,自主寻找离它最近的物体,确定物体方位,并向前把它抓起来,送到再远点的地方放下,然后快速退回起点位置,继续寻找其它最近的物体,循环三次,依次寻找、抓取、搬运、和放下三个物体。看看这个机器人的表演吧。    这个智能机器人脑子咋想的,这么聪明地完成了预设的任务,当然是通过程序实现的,这次我依然是用NXC软件编写程序。前面两篇文章先看看。 C语言乐高玩具枪的制作http://www.eefocus.com/zhang700309/blog/11-11/234833_a4815.html不会跌落的桌上巡游车(NXC编程)http://www.eefocus.com/zhang700309/blog/11-11/235020_c5e3b.html         这个机械手车有三个电机,A电机控制着机械手的抬起和放下动作,B、C电机控制着小车的左右轮子,从而控制着小车的行走。    看第一张图片,您可以找到几个传感

不会跌落的桌上巡游车(NXC编程)
发表于:2011-11-18 16:50:56 | 分类:C语言与乐高机器人
浏览( ) | 评论( )

     桌上巡游车能够在桌子上到处跑,但不会跌落下来,这个智能车蛮聪明的。它长了两个触须,触须上连接触碰传感器,当触须到达桌子边沿,其上的触碰传感器会压下,给智能车的“大脑”发出一个信号,于是“大脑”进行逻辑判断,给智能车的驱动电机发出命令,让小车后退,再转弯,躲开桌沿而不跌落,并继续在桌上巡游,以此往复。看看视频:为了完成视频上的任务,我用NXC编制了程序。您可以先看看我的NXC的入门文章: http://www.eefocus.com/zhang700309/blog/11-11/234833_a4815.html,NXC软件是免费的,该软件下载地址在我的入门文章里。 不会跌落的桌上巡游车的NXC程序:(详细注释)task main(){   //设定“右”触碰传感器接在NXT控制器的传感器接口1上   SetSensorTouch(S1);   //设定“左”触碰传感器接在NXT控制器的传感器接口2

C语言乐高玩具枪的制作
发表于:2011-11-15 15:02:56 | 分类:C语言与乐高机器人
浏览( ) | 评论( )

 图1:玩具枪全景图      儿子让我给他买玩具,口袋里没钱,于是想,不如用乐高工程积木给他做一个玩,就像小时候爸爸给我做的那个木船一样,我用线牵着木船在小水池里荡来荡去,高兴得很!现在我也可以给我儿子亲手制作玩具了,心里也很爽。     看看上图,就是我花了半个小时,搭建的乐高玩具枪,可以发射子弹,同时配上“COOL”的音效。视频:    这个玩具枪有一个触动传感器和一个伺服电机,分别连线到NXT控制器的传感器端口1和马达端口A,用手指扣动扳机,即压下触动传感器,A伺服电机以功率为100的速度旋转360度,电机带到曲柄滑杆机构动作,滑杆顶出一颗子弹,把纸杯打倒。手指再扣动一次扳机,又发出一颗子弹。    以上任务逻辑,我这次是使用NXC编程实现的,NXC为John C.Hansen所开发的类C语言,NXC是取Not eXactly C之意。它完整支援所有NXT硬件资源,包括:控制器、伺服电机、传感器和许多第三方外设。NXC程序在Brick Command Center编程环

键盘遥控NXT机器人的LabVIEW编程详解
发表于:2011-11-08 11:40:30 | 分类:LabVIEW与乐高机器人
浏览( ) | 评论( )

 键盘遥控乐高NXT机器人:图1 基于LabVIEW的键盘遥控NXT机器人示意图视频请观看:  程序下载:键盘遥控labview程序.rar    要用键盘遥控乐高NXT机器人,首先需把键盘的按键信息读取到PC机的LabVIEW软件中。我制作了一个键盘数据采集程序,下图两图分别是这个程序的前面板和框图程序。图2 键盘数据采集前面板图3 键盘数据采集框图程序   上图键盘数据采集框图程序中,从左到右有四个与键盘数据采集相关的VI,最左边的是“Query Input Devices”VI,可以产生“按键信息”簇,显示在前面板上,看到图2中键盘中的按键有128个了吗?接着是“Intialize Keyboard”VI,用于初始化键盘。然后进入一个While循环结构,我用红色圈标注的“Acquire Input Data”VI是关键的VI,这个VI可以生成同时被按下按键组成的字符串数组,然后可以用“索引数组”VI,把数组