MarsIoT树莓派物联网开发平台介绍

创建日期: 2017-04-24 浏览次数: 13124


MarsIoT(火星互联)之前发步了安卓上的App让树莓派爱好者以极为简单的方式快速的接入MarsIoT平台,远程的控制树莓派的GPIO,不过为了简单化,也因此牺牲了很多灵活性,难以应对更为复杂的场景和需求。

针对大家的反馈,我们目前又上线了MarsIoT开发平台,为树莓派爱好者提供树莓派上的开发包,以及客户端数据查询和发送命令等RESTful API,树莓派爱好者通过树莓派开发包的二次开发,完全可以应对各种现实场景下不同需求的开发,使用RESTful API可以在各种客户端(安卓,IOS,浏览器)上完成对接入MarsIoT平台的树莓派设备的数据查询以及控制命令的发送。

MarsIoT树莓派物联网开发平台的管理模型本着简单明了的理念,设计的尽量简单和直观。


下面介绍一下开发平台上的基本概念(请特别注意一下相关的概念的英文缩写)。


在开发平台上每个用户都拥有一个自己的独立的站点(site)空间,每个站点(site)包含若干个设备(assignment),可以向设备(assignment)发送自定义的命令(command),也可以查询设备向站点发送的消息(message)。


控制台登录入口:http://admin.marsiot.com


登录控制台后,每个用户会分配一个唯一的site token



根据提示信息下载开发包marsiot_pi_sdk到树莓派上,将树莓派上的marsiot_pi_sdk目录下配置文件 config.properties中site.token修改为你自己的site token,运行后,树莓派会注册到了你的站点上:



在树莓派上,设备注册成功后,显示如下信息:


在控制台上,设备列表会显示注册成功的树莓派:



点击设备列表中右侧的‘纸飞机’按钮,可以进入发送命令的页面:


在发送命令的页面,点击发送命令按钮,向设备发送命令:


命令发送成功后,会显示相应命令的RESTful API的URL及参数,方便开发者进行开发:

(发送成功只意味着平台服务收到了命令,并不代表树莓派收到了命令,因为整个系统处理命令是异步的方式,服务器收到客户端发送的命令后,会根据自己的调度策略,择机发送命令到树莓派)



当然,你可以添加自定义的命令,发送给树莓派:


添加自定义的命令,命令名称和参数是和树莓派上的程序相配合的,具体写法可以参考SDK自带的helloword命令,树莓派上的程序添加相应的命令处理函数后要重新编译运行:


树莓派上的helloword命令处理函数里,树莓派上的程序通过sendMessage向MarsIOT平台发送响应的消息:


控制台上可以查看树莓派发送过来的消息:


为了方便开发调试,所有页面都会直观的显示RESTful API调用的URL及相关参数,使用这些api,客户端(手机,网页,等等)可以查询,远程控制树莓派: