智能桌上足球轰趴:线上改造记录分享

活动目的:普通的桌球是通过一个类似算盘的计数器,实现计分的,通过我们的改造,让普通的桌上足球变成了一个可以自动计数的智能桌球。同时教不懂iot产品开发的童鞋,从0开始实现一个完整产品的开发。
 

201603qfqegglrd5zq5fhl.jpg


先来介绍一下机智云:
机智云,全球领先的智能硬件自助开发及物联网(IOT)云服务平台,广州机智云物联网科技有限公司注册商标。面向开发者(企业)提供智能硬件PaaS及SaaS云服务,是目前国内最大的智能硬件集群之一,被业界及媒体公认为物联网第三方云服务第一品牌。
公司拥有超过200名技术研发人员,连续5年成为“苹果公司”认证 MFi 公司在亚太地区最大的物联网软件解决方案提供商,拥有多项软件版权和专利技术,连接国内外超过450万的智能设备运营,服务超过700家客户,多次主导国家、省、市重点科技创新项目。


机智云合作伙伴遍布全球,包括苹果、 奔驰、 国家电网、 美的、 A.O.史密斯、万和、四季沐歌、中科、老板、公牛、伊莱特、艾美特等国内外知名企业,已全面覆盖商业及工业应用领域,帮助传统企业快速实现互联网+转型。
接入后服务:提供智能设备接入系统GDCS、智能设备管理系统GDMS、物联网分时租赁平台GALS、智能菜谱云“厨膳云”GRCS和微分销管理系统GSMS等接入后服务,可与主流ERP、CRM系统衔接,满足硬件产品管理、售后服务管理、用户积分体系、库存管理、经销商管理、微信分销等运营需求。
硬件准备:
我们今天的主题是《智能桌球开发》,接下来由我来给大家分享下我们是如何改造我们的桌球的。
【直播继续】她是我们机智云72小时创客马拉松活动上的获奖项目。【直播继续】她是我们机智云72小时创客马拉松活动上的获奖项目。
 

201603gl6lr0blbjqj0zlk.jpg



普通的桌球是通过一个类似算盘的计数器,实现计分的,通过我们的改造,让普通的桌上足球变成了一个可以自动计数的智能桌球
201754nwl9kugwuodlv55l.jpg 
这是我们通过gokit实现智能化,解决的几个问题
201755xreeqcxtceqokokx.jpg 
我们用4个按键来做计分器的输入 

201755x5fbfbipiod6t8bi.jpg 
201855c5720cr0v702k27r.jpg 

好了,介绍完玩法之后,我们来看看改造普通桌球需要写什么材料吧。 


下面这个图片就是gokit与这些传感器的接线图了,大家可以先保存下,后面会用到。
202144o5xx1rqsz5s1xzgx.png 
201956aky6n34161umkuz3.jpg 
简单介绍下:
红外传感器,输出为IO,有物体遮挡的时候会发生电平变化,我们就是根据这个电平的变化来判断是会否进球的。
数码管是一个可以显示数据的输出模块,由一定的时序操作才能正常的显示。 
按键,当然是输入类型的IO了,按下电平也会有变化的~ 

接下来我们把传感器和gokit连接起来,连接的管脚就是刚才发过的接线表
202741x55yn2a8y7n88yy8.jpg 
有2个红外模块,分别接gokit的A0和A4


203232ttn447n54nuzkpki.jpg 
下面我们再发数码管接上
203302lyoccnxoxxz9cdov.jpg 
分别接gokit的A5,D11,D12 ,注意顺序,别接反了

203328hz3e5sssv22kk58s.png 
最后就是按键的接线了 。同样要注意顺序,否则按键的功能就变了。

来看下我们最终接好线的效果吧 

203408s0izngzqlzg4ekla.jpg 


接下来我们来定义下产品 

先从功能上分析下数据点,下面这个图就是【功能+数据点】的定义 

203640bhhlmgmnqn8h9mrv.jpg 

定义数据点:
登陆我们网站申请开发这账号之后就可以在我们的自助开发平台定义产品了,没有账号的赶快去注册一个吧 www.gizwits.com

203924l2txf4ontef22v9e.png 

注册号了之后是这样的
204049ilt9lqu79xgjx9x9.png 
进入到【个人项目】里点击【创建新产品】 

204150mnfqizczggncjglz.png 
填好【名称】,选择【通信方式】、【通信类型】。然后点击【创建 】

204328kfcyif4yjyyifc7v.png 
之后会进入这样的页面
204403v6pn2bj1vmooqvtb.png 

这里有两种定义方式,一种是【基于现有模板定义产品】,另外一种是【完全自定义方式】。对于新手来讲,可能不太明白数据点是什么意思,我简单介绍下,一个功能点可以以一个数据点的形式来呈现,比如开与关这个就是一个功能点,可以定义为一个数据点,这个数据点的形式定义为布尔型,0代表关,1代表开。现有模板可以给新手来事先熟悉下我们的一些规则,如果是老司机呢,可以根据自己的需要自定义模板,或者在现有模板里面编辑下成为自己想要的产品。这里我们选择自定义的方式来给大家介绍下哈。

由于模板里面没有和我们的桌球相似的产品,我们选择自定义的方式 ,下面我们就以“蓝方进球数”来举例如何定义数据点。下面是这个项目的一个完整的数据点,举个例子,“蓝方进球数”

204534td9vve5d2bz22vrm.jpg 
点击“【新建数据点】” 

204605pcy99ufkyub772ji.png204717xck3jomgwtw7qkwz.png 填入名称后选择【读写类型】、【数据类型】。这里需要注意下什么是读写类型,什么是数据类型。
在传感器里面,像红外、温湿度传感器等这些读取外部环境参数的一般都是只读类型
像马达,LED指示灯等这些可有动作的一般是可写类型,你懂的,所以进球我们上面用的是红外传感器,所以这个就是只读类型哈


204802gz4uwlg348w1pwh3.png204819oxruzllua2uuavar.png 
按照定义填写完之后是这样的:如果选择了数值类型,下面会自动出现数值范围,这里我们取数值范围为0-10哈
204936jq6pfwz4xqq9x9q8.png 
定义完这个数据点后是这样的。。。。。后面大家继续补充数据点,我就不一一分解了哈

205313bghzbnjoejszmohb.png 
大家自己把后面的数据点定义完吧!~
(提示:所有的数据点在这里205416o7pzyl83rxs474tr.jpg210038e9k4odrupza8n8wk.png210039xn2n2ynblneettni.png 


部署开发环境:

定义完所有的数据点后,点下一步会进入这样的页面,圈出来的“《机智云智能桌球-机智云接入串口通信协议文档》”就是云端根据你定义的数据点自动生成的一份跟wifi模组通信的协议文档。(这份协议是根据你自定义的产品而系统生成的,记得下载点开看看)
205514enn9z3dabsssy56h.png 

下一步之后就是这样的页面 ,下载这个app,后面我们会用到的,扫码就可以了。
这里内容也比较多,包含
1. iOS / Android SDK(可以加入自己项目工程,改改UI,加个logo就是自己的,不收钱,还开源)
2. 现成的Gizwits Demo(安装下,等下会用到)
3. 还有集成文档
4. 到页面还有一个API指南

5.轻应用开发资源:使用机智云提供的Open APIs(Http / WebSocket),可以快速开发网页或微信应用等基于html的轻应用,用于管理和控制智能设备。

205851pnsy4ksprj3isikr.png 

定义好的同学可以下去下载下源码:http://site.gizwits.com/zh-cn/developer/resource/hardware?type=GoKit
210226rwrr20b5b6wxac5b.png 
到这一步,基本上云端的也设置好了,马上就要进入敲代码环节了~~~


修改代码(二次开发 !!!重点)

安装开发环境:现在就进入到要敲码环节了,先安装下开发环境
链接:file:///http://pan.baidu.com/s/1jINhSmM   密码:yb5m 
这就是我们的目录结构 
211155p6u66f66qk956zrg.png 
第一步先修改Product Key
211251jsu8nm528fp0sj5z.png 
211404t3jd2y39z2ftdr29.jpg 
211436mvp2qhh2h2pvk23t.jpg 
211518p99ynqnqqlbomwmn.jpg 
211535soqqr6a3c343f3ki.jpg 
211604vizz90n7npypysp4.jpg 
211604sn7wmjaa7lc7mla7.jpg 
注意对应关系
211651peqchi6he2hhe1be.jpg 

枚举事件修改
211710ql1t4x1q6a1vlqo4.jpg 
212019igijf0ucyfoqyc06.png212019u8ka84s5da45a58g.jpg212019v7j9tvdt96pjccss.jpg212020j94l9qqnqhoqlakn.jpg212020d88pjjlyj8n3f7ay.jpg212057drl5z1eo9epee4bl.jpg 

212057tvaapzvvphgsvz67.jpg212226kvvb1ftvkp8p1bbu.png 
212226xekqszegvvsn3csn.jpg 
212226ciijjiomhjhicyiy.jpg 
212321nqhr3nr3gcg552kg.jpg 
212350djk62r1005n0qqos.jpg 
212427rikb9l0i3t2hwux2.jpg 
下面是配置入网的修改,大家采用gokit的话,可以不用修改
212428vx6ds2x0fqksx6dx.jpg 
212603k16ygskk9619d6wk.jpg 
212603nifvto1o2dkn77ob.jpg 
212604l3iqbxx31khvv73t.jpg 
212604vxx2xmk5h5z5uokr.jpg 
212604h33dsrzi3yj7xdyd.jpg 
好了,这就是修改程序的方法,大家先按照上面的方法修改下 。最后我会把我们的源码发出来给大家参考。
如果你修改完了,可以按照帖子上的方法烧录下,实际的跑跑看接下来的这段时间大家修改程序吧,有问题的直接提出来,或者到论坛里发帖。   提问开贴地址:file:///C:\Users\GIZWIT~1\AppData\Local\Temp\%W@GJ$ACOF(TYDYECOKVDYB.pnghttp://club.gizwits.com/forum-176-1.html  技术大咖问你解答
 桌球-原始-初始化完毕.rar (11.18 MB, 下载次数: 0) 智能桌球示例代码-20160825.rar (5.83 MB, 下载次数: 0) 

代码来了,在看看我们安装的效果吧 
215705yptilv2aaaxyiel2.jpg215706fx3gxx6vcssqusz6.jpg215706rfsc54qlxxdcssim.jpg215706blhal1vmqw0onqox.jpg 

至此,教程结束。


番外:
虚拟设备开发:可在线模拟硬件开发环境~~~和功能等。
接下来,小编从硬件接入,云端创建虚拟设备,然后再植入product key到硬件设备,真正赋予硬件与云端通信的能力。
没有硬件的同学们可以先借助机智云自助开发平台的虚拟设备来调试调试下指令代码。 


如果同学们手头上如果没有我上面所说的GoKit,也没有关系,其实是可以兼容其他开发板的,我们还有一个强大的工具,叫做“虚拟设备的”。

222303wkkozc9gw4xwcere.png 
大家进入产品,左边的菜单有一个菜单叫做“虚拟设备”,就是你在机智云平台里面创建的每一个产品我们都可以当做是一个虚拟的硬件设备
222332zs1mydmcdzesitgx.png 
点击启动虚拟设备
222343sd810o5m1y70oz66.jpg 

点击绿色按钮“显示二维码”会弹出一个二维码(如下图所示),如果有同学已经下载了机智云的APP,可以扫下这个二维码控制下我定义的这个产品。这里有搞代码的同学呢,可以看看这里的通信日志哈,当我客户端跟云端产品绑定之后呢,这里就产生一系列的记录哈,包括APP->云端->虚拟设备,指令。
222414roo11v19y886v9q9.png222441kvvqy4rahnjavds3.png 
在虚拟设备更改数值,按推送,手机客户端也会实时更新,也可以在通信日志看到 虚拟设备->机智云云平台->APP
222718kf7oj77ww66wf7jv.png 


这就是小编的手机哈,只有一个数据点,实时变了5哈
222802xy098iqpuypuggq6.png 
好啦,到这里,小编该退了,这个改变世界靠同学们了

转载于:https://my.oschina.net/u/2320846/blog/738211

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值