点击文章标题浏览全文
由于兴趣使然,从2008年开始我又重新开始在业余时间玩起各类电子制作。并在2009年底有幸与一群小伙伴创办了RoboPeak机器人团队,并且一路走到今天得以公司化运作。从一开始几个人业余小打小闹逐步成为一家专业从事服务机器人并以自主激光定位导航核心见长的公司SLAMTEC,在见证了这几年努力得到收获的同时,我也感受到了整个产业逐步向着硬件智能化方向的变革。
在这个过程当中,比较引人注目的是一个名词的流行:Maker。为了能够阐释这个名词最纯正的意味,我先暂不提及它目前在国内广泛使用的译名。Maker, 直接翻译就是“动手做东西的人”。从这个角度上看,包括我在内的很多从事DIY的爱好者就被划分到了这个群体内。
Maker这个概念的出自美国的Make:杂志(http://makezine.com/),该杂志与国内的很多DIY类刊物如《无线电》类似,定期得向读者介绍从电子制作、艺术创作、有趣DIY等方向的文章。不过,Make:做的更进一步,他们将Maker作为一种文化潮流,并且每年定期的在世界各地举办属于Maker的聚会:Maker Faire。这个聚会给了全球所有DIY爱好者、艺术家乃至是企业/初创公司一次难得地对外展示自己作品的机会。随着半导体技术的革新,进行新硬件开发的门槛不断降低,更多人得以快速使用Arduino这样的平台进行原型作品开发,Maker Faire也顺着该趋势在全世界范围得以流行。
对国人而言,Maker这个名词被大众所认知也正是随着2012年第一届深圳举办的Shenzhen Mini Maker Faire开始的。相比后来国内举办的Maker Faire和创客嘉年华,2012年的那届Maker Faire的规模相对较小,但却第一次给了国内从事各类DIY创作的团体、个人展示自己的机会。我们的RoboPeak团队也是从那年开始,逐步开始在各类集会中进行作品的发布展示,并被大家所认知。
而在今年,我们RoboPeak团队来到了美国加州Bay Area,第一次参加了最原汁原味的Maker Faire Bay Area并进行了展出。在为期三天的参展过程中,我也体验到了作为Maker Faire发源地与国内的不同之处。特此写下此文,向大家分享我们这次的见闻以及我的感想。
本届Maker Faire Bay Area位于加州San Mateo郡的Event Center。
图:本届Maker Faire Bay Area的位置,地图来自某境外网站
非常巧的是,我们正好赶上的是自第一届Maker Faire举办至今的第10个年头集会,主办方在活动上花了不少心思。整个展览为期两天半,分别是5.16 17 18三天,其中,16号是下午半天的展览。这样的设置用意为何?5.16那天是周五,按理说不会有特别多的游客。实际上这是本届Maker Faire主办方刻意安排,在对外的活动安排里,主办方只是写了17、18号两天的展览时间。而周五下午的半天展览是专门为前来展出作品的Maker们准备的,目的就是让大家趁着这天游客相对较少时有足够的时间来相互“串门”交流取经。不然到了后面几天游客增多,大家就忙于接待了。
图:展览期间密集的人流
图:整个展出区地图
作为一年一度Maker Faire的全球主场,并且恰逢10周年,这届Maker Faire Bay Area的规模自然是不能小的。主办方设置了多个室内展示区、多个室外大型互动作品展区还有专门供销售DIY套件、Maker作品的Maker Shed馆。
就室内展厅,就包括:
....
这次我们一行4人,展出的作品为:
请点击文章标题进入阅读全文
在Intel发布首款兼容Arduino开发接口风格的x86开发板Galileo的不到一年内,推出了它的升级版本Intel Galileo Gen2。顾名思义,Gen2即英文Generation 2(第二代)的缩写。从一个简单的照片对比中,我们就可以感受到两者的不同:
图:Intel Galileo一代(左)与二代(右)的对比图
从开发板实物的直接对比上,我们可以看到Galileo Gen2的左侧布置了不少小芯片,似乎比前一代复杂了不少。那么它到底与前一代的主要区别在哪里?到底哪些地方得到了提升呢?
当然,这些问题的答案一部分Intel已经为我们解答了:在Intel的官方网站中给出了Galileo Gen2相比前一代的硬件配置的变化。但仅仅硬件配置的不同却远不足以解答以上的这些问题。这些硬件配置具体带来了那些实际的性能和特性改变?在底层设计上,Galileo Gen2具体是怎么做的?
为了将这些问题弄清楚,在没有更多现成资料的情况下,最直接的手段就是亲自去实践了。
同时,我们知道,Intel Galileo虽然是一块兼容Arduino规范的开发板,但其背后基于x86的平台特性又不断地在提醒我们:这又不仅仅只是一块Arduino兼容系统而已。那么,隐藏在兼容Arduino接口规范外表下的Galileo的真实实力又该如何充分展现出来呢?在本文的上一篇《Intel Galileo 开发板的体验、分析和应用》[1]当中,我已向大家简单的介绍了Intel Galileo的底层实现、基于yocto环境的Linux系统开发等话题。在这篇文章中,我将继续深入这些话题。向大家分享Intel Galileo不仅仅作为一个简单的Arduino板的那些功能。
图:在Intel Galileo中安装Debian Linux发行版,运行图形桌面
图:Galileo Gen2与上一代的对比
图:相比前一代Galileo对IO的实现(A),Galileo Gen2的实现(B)令软硬件的设计复杂了不少
图:示波器中观测到的IO口产生的信号波形
图:Galileo Gen2原理图中进行IO信号电平转换的部分
图:Quark SoC数据手册[8]中描绘的硬件框图,可发现有2种GPIO设备
图:通过串口调试器看到的本例子输出
图:使用Hob简化Yocto的使用过程
又是许久没有更新自己Blog了。虽然在微博上一直更新自己近况。不过好的内容还需要Blog写文章积淀。
点击文章标题浏览全文
作为一名电子爱好者,我一直喜欢收集各种类型的屏幕,尤其是那些具有特殊显示效果或者有一定历史且目前很难见到的。虽然不敢说真的收集的有多全有多高级,但也一度被大家戏称为“屏幕控”。
近期因为各种机缘巧合得到了几块并不多见的EL和等离子工业显示屏。这些屏幕对于电子爱好者来说非常少见,主要应用在工业和航天、军工领域。但显示效果别具一格,因此写了本文向大家分享他们的特点以及使用方式。
虽然这些屏幕并不是大家都会用到的,但相信其中的一些使用理念,尤其是在缺少厂家资料情况下,通过电路分析寻找驱动方法的思路,会对大家有所帮助。
图:单色等离子屏(左)与EL屏(右)的显示效果
图:用EL显示屏展示RoboPeak机器人控制界面(PLANAR 640x400)
图:PLANAR 320x240 EL显示屏
元件
核心参数
摄像头
广角镜头,视角>120度
投射键盘画面的激光器
无特殊要求
一字线激光
红外激光器,>50mW
红外带通滤光片
800nm左右光谱带通
性能指标
描述
反应速度
30hz
最多同时输入的按键(多点触摸点数)
无穷多(软件目前限制在10点)
分辨率
0.1mm
最大测距误差
2mm
传输协议
USB
这是一个文章系列的一部分,介绍基于MK802这类MiniPC的扩展开发,并展示他在计算机视觉、机器人控制方面的潜能
欢迎转载,但请保留原始作者信息(Shikai Chen, http://www.csksoft.net),以及指向本文原始出处的链接!
访问目录:基于MK802 MiniPC的扩展开发应用-简介篇(http://www.csksoft.net/blog/post/mk802_dev_intro.html)
revision: 0
这是本系列文章的最后一篇了。本文将以如下几个基于MK802的应用实例进行介绍,向大家展示MK802在机器人控制以及计算机视觉方面的应用潜力。
1. 基于MK802的摄像头自动光源跟踪
2. 基于MK802的人脸摄像机云台跟踪
3. MK802将路由器网络通讯情况显示与VFD屏幕
这些是例子基于了我前5篇文章[1][2][3][4][5]所介绍的各类技巧和环境所形成的,这里我就假设大家已经阅读过先前的文章了,这里将以介绍思路和原理的方式来介绍这些实例。如果想进一步了解他们的实现,可以在本系列文章在github开设的项目中查看他们的源代码,在前一篇文章[5]中我也介绍了如何编译他们的。
另外之前也有一些朋友表示这些实例使用的算法并不高级,性能也不佳。这里我就做一个统一的回应,本系列文章介绍的这些实例的目的并不是去实现这些功能本身,这些实例目前的确存在更好地实现。我制作这些实例的目的是为了向大家介绍MK802用于机器人控制和计算机视觉算法处理方面的强大潜能,因此我都尽可能使用了被大家熟知或者存在于OpenCV例子当中的程序作为范本。至于如何将这些例子进行改进扩充,就是靠大家发扬光大了:-)。
另外还有很多人会问这些例子能不能在树梅派、MK802的后续升级版本、XXXXX上面实现?这里我再次重复前几篇文章的说明,这里介绍的一切方法和思路对所有基于Linux的系统有效。当然,如果只是简单的复制这里的步骤,那恐怕只能用于MK802了。
点击文章标题浏览正文
这是一个文章系列的一部分,介绍基于MK802这类MiniPC的扩展开发,并展示他在计算机视觉、机器人控制方面的潜能
欢迎转载,但请保留原始作者信息(Shikai Chen, http://www.csksoft.net),以及指向本文原始出处的链接!
访问目录:基于MK802 MiniPC的扩展开发应用-简介篇(http://www.csksoft.net/blog/post/mk802_dev_intro.html)
revision: 0
这里将介绍MK802这类基于Cortrex A8/A9相对于Arduino这类单片机开发版、树梅派、以及PC对于爱好者来说最具有吸引力的优势所在:性能足够强大,可以运行OpenCV这类库的视觉算法,同时体积足够小,也相对于PC足够的省电。
这篇文章正是介绍如何在MK802上使用OpenCV库并利用它进行计算视觉相关应用的开发的。在我实际使用的体验来看,OpenCV在MK802上运行的性能虽然相比PC还有一些差距,一些复杂的算法运行的较慢,但是大部分的算法都可以满足需求。并且如果进一步的优化后,相信可以有更多的性能提升。
需要注意的是本文并不是OpenCV以及计算机视觉方面的教程,对于涉及到的一些视觉算法的知识以及OpenCV本身的背景知识,还需要读者自行学习。本文将着重关注如何在MK802这类MiniPC上使用OpenCV这个问题。
点击文章标题浏览正文