如何为编程爱好者设计一款好玩的智能硬件(一)——即插即用、积木化、功能重组的智能硬件模块构想
一、我的构想:
世界上本来没有轮子,只是码代码的人多了,也就出现了轮子!由于至今为止咱们还没有研制出一种可以完全自主学习码代码的代码,同时需求也不断朝着复杂化的方向发展,所以造成了代码界的分工越来越细!曾几何时软硬件本为一家,码代码就得依着硬件平台来,通过代码统筹硬件资源完成具体业务需求。而如今,可能一个优秀的程序员都不会修电脑(┑( ̄Д  ̄)┍)!
哈哈哈,我正是基于这种情况想到为那些精通于某一平台上的应用开发,同时对硬件想了解一下但是又不想从0开始倒弄半天电子元件的编程爱好者,设计一款可以实现简单组合对外呈现API供通信的智能硬件积木。
我还没想好给它起个什么名子,暂且称为“X-积木”!
它是一些模块化的硬件积木,通过不同的组合实现不同的功能。此外,该组合过程中不需要外部重新烧写程序,而维持这一复杂组合与功能重定义的核心在于一个“X-积木OS”!
说简单点类似谷歌当初提出的模块化智能手机,但是模块化智能手机的模块太少或者根本就不是为了多种组合而设计的。我构想的是一种能容纳尽可能多的模块,同时兼容之前各种组合的新型OS。
举个例子:
你有几个MCU模块(该模块上有40个插孔),有一个蓝牙4.0模块(该模块上有4个插针),有一个步进电机驱动的开关模块(能实现对家庭里的灯的按钮实现点击的机械部件,拥有4个插针),有几个电源模块(2个插针),一个温湿度模块(3个插针),两个2.4G模块(4个插针),一个4.3寸的TFT模块(6个插针)
这样你可以:
① 将蓝牙模块和步进电机模块随机插到MCU模块上,用电源模块给系统供电。系统第一次重启后会对MCU周边设备进行检查保存当前周边信息并重组操作系统,接着自动重启,本次重启后系统将运行重组操作系统。该系统对内并保持对周边设备变化的监听,对外根据其搭载的不同信号发送模块(如蓝牙、wifi或2.4G)以及搭载的不同机械或传感器模块提供重组的通信渠道。如本例,重组后的系统发现自身连接步进电机机械模块和蓝牙模块,便会对外提供一些列通过蓝牙控制步进电机的接口。特别注意:这里独立的通信模块封装有自己的通信接口,同时其和其他模块组合时会产生新的通信接口。
这样,你只要略懂一些平台的关于蓝牙的应用程序开发,你就可以通过自己的代码控制自己设计的硬件系统了!用上面的4个模块+一个精通IOS\Android\WIN的编程爱好者=一个简单的远程遥控开关
② 还有更炫的:一个温湿度检测模块+光照强度检测模块+土壤水分检测模块+MCU+POWER+BT4.0=?
是一个盆栽智能硬件!通过土壤传感器收集土壤水分数据、光照及温湿度传感器收集盆栽周围的温湿度和光照数据通过蓝牙周期性地将数据发出。如果你是一个对数据痴迷的编程爱好者,你可以基于这个玩具将数据整理并做出可视化的炫酷数据展示界面;如果你是一个对人工智能比较狂热,你可能基于该平台将你构建的盆栽培养专家系统集成进来,做一个智能的盆栽APP,说不定就火了!当然,如果我们有吸水泵模块,水量控制阀模块,甚至是化学反应罐模块,你能做出一个全自动的盆栽系统!!!
接下来的计划:
至此,很多人应该已经兴奋地从睡梦中惊醒(当前时间3:06)!此系统一出,必天下大乱,风起云涌,就像当年苹果商店造就了无数APP开发者一夜暴富的神话,这东西也具有相同但更优质的属性((~ ̄▽ ̄)~白日做梦结束)!可能一些隐藏在人群中的高手早已看穿一切——一个动态改变系统的系统谈何容易,PC发展这么多年也就多了个USB这个通用接口。
确实,对“X-积木OS”期望太高反而会让我们感觉无从下手。此刻我们就像站在一座金字塔面前,思考着如何绘制一张绝妙的蓝图来构建起这一庞然大物是走不通的。俺也不敢大话放在前面——走一步算一步!明天“同”一时间,同一地点,探讨别人家的智能硬件积木是怎么玩的!
@beautifulzzzz
2015-9-5 持续更新中~