首页 论坛 物联网专区 【连载】物联网全栈教程-从云端到设备

正在查看 15 帖子:1-15 (共 37 个帖子)
  • 参与人数:15 |  围观次数:7,704 
  • 0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(一)

    2016年的时候,我还在学校里面准备着毕业论文,当时做的课题是预测一个挖掘机上面的一个继电器的寿命。我们的想法是检测其吸合的次数,然后根据吸合的次数来预计其寿命,这个想法很简单。因为一个继电器失效之前通常会正常吸合一定的次数比如10W次。

     

    当时还是一个愣头青,想法简单。实际去做的时候才发现事情远没有想的那么简单,因为即使同一个批次的继电器,其每个个体差异都挺大的,而且继电器失效的方式也有很多,不能吸合仅是其中的一种,那么要想系统地研究就比较困难了。当时的想法是如果能够分析海量的数据就好了,因为每个继电器从出厂到报废可能会产生几百万条不同参数的数据,而且做试验的话可能需要几万只继电器参与,粗略一算好家伙,想要准确地建立一种继电器的模型,少说需要处理几千万条不同类型的参数,而且它们之间可能是相互关联的,单说采集几万只继电器的数据这个过程,就需要花费不菲的时间和资金。

     

    如果说两年前我为之烦恼的话,那么在如今这个时代可能就不会那么忧愁了。当初的做法是选了几个典型的个体在实验室做了几次实验,那是没有大量时间和资本支持下做的选择,其实这个实验是不能代表实际工况的。如今想一下,完全可以用物联网的技术去解决问题。

     

    使用NB-IOT技术做一个小的模块,可以直接接到挖掘机的电器盒里,那么我们就可以制作几百个几千个这样的小模块安装到设备上,采集的数据直接通过MQTT通信协议上传到服务器。这样就解决了实验样本的问题,而且只要挖掘机在正常工作,我们就可以得到一手数据,我们要做的就是去睡觉,等待一定的时间之后去服务器分析数据即可,现在的云服务器都会提供海量数据分析的功能。如果我们已经分析了海量的数据,那么就会准确地预测一个继电器在什么时候失效,合适的时候提醒驾驶员更换,能够解决很大的问题(谁也不想在工地上耽误工期)。通过物联网技术实现同样的功能,会节约大量的资金和时间。

     

    看到了吧,物联网技术就是这样革命传统技术的。不管是数据通信,还是数据分析,亦或是智能家电,智能养猪都离不开物联网技术的支撑。万物互联带来的不仅仅是生活方式的改变,更是千千万万的商机。零妖将连载一系列的文章,帮助广大感兴趣的朋友快速掌握物联网技术。

     

    我将会分享自己学习的经验(因为我也是刚开始学)。目标是制作一个物联网弹幕器。大概的连载内容也已经初步规划好了,打算先说说云端的东西,然后编一个网页应用在服务器上运行,再画一个硬件电路,调试硬件代码(硬件电路当然要开源喽)。

     

    如果你是做单片机开发的那么相对来说就会很容易入门,毕竟物联网的最底层还是硬件;如果你是做服务器前端和后台这一块的,那么也会很容易,毕竟物联网是整个系统,不是一个工种能搞定的;如果你是爱好者没什么基础,那么就需要你多用心学习,我会尽我所能让整个文章通俗易懂的。

    祝自己能够坚持写下去。

    祝你能够抓住物联网的机遇,改造世界!

     

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(二)

    我不信你没有看过爱奇艺或者优酷这些视频,看到这篇帖子的人,99.99%都看过。那么视频上发送弹幕你一定也知道了,玩没玩过我不知道但是你一定见过。有些朋友在看直播的时候更是喜欢评论个弹幕,这个不起眼的小功能肩负着广大用户交流的功能,这个要比评论爽多了。在物联网技术兴起的时代,零妖就透漏一个新的商机给你——物联网弹幕器!

     

    弄一个大屏幕安装到商场里面,每一个顾客都可以发送自己的评论到屏幕上比如那家店有优惠,哪家店员MM特别漂亮……..这个有可能会对线下商超产生一个小的变革。咱们回归到技术层讨论,既然是学习物联网技术的连载帖子,那么我们讲究的是实用技术,这个物联网弹幕器的小项目我们可以看作是一个Demo例程。

     

    一个完整的物联网项目不是一个硬件的事情,也不是一个云端软件的事情,而是两者的配合。既然称之为物联网,那么我们讲究两个字:联网。好吧,将会涉及到两个东西,我们称之为上行数据和下行数据。只要我们的设备能够做到上报数据和接收数据,那就够了,剩下的事情无非就是处理一下这些数据。咱的弹幕器实战项目将会涉及到上述的内容。零妖不是为了制作一个弹幕器,而是要你学习“联网”。

     

    物联网弹幕器将会采集一个温度传感器的数据并简单处理一下,发送给云端实现设备上报数据的功能;在云端,我打算做一个Web应用,你可以理解为制作一个网页(我已经玩过了,发现网页代码编写炒鸡简单),来显示设备上报的数据,这样我不管身处何方都能看到我家的温度了。然后在网页上增加一个发送弹幕的功能(就是输入字符串,然后发送给设备),我们的设备要接收这个弹幕,并显示到屏幕上,这样就搞定了下行数据。

    实现上述功能的细节问题我将会在后续连载的帖子中详细讲解如何实现。

     

    简而言之,我们要实现“联网”,然后搞定上行数据和下行数据。

     

    上行数据:物理世界–单片机–网络–云端服务器–数据库–数据调用–显示

     

    下行数据:Web应用输入数据–服务器收到请求–服务器寻找目标设备–服务器下发数据–网络–单片机–分析数据内容–执行动作(显示弹幕)

     

    彭彭
    彭彭 吃瓜群众

    连载

    彭彭
    彭彭 吃瓜群众

    怎么点不开

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(三)


    没有规矩不成方圆。从目前的市场环境来看,MQTT通讯协议已经成为了物联网行业的标配(具体的MQTT协议零妖将会在后面的文章里说明)。简单地理解就是一个设备连接到云99%都是走MQTT通讯协议的。MQTT通讯协议属于轻量级的一种,说白了就是保证数据可靠传输的前提下,其消耗的流量非常少。有一点需要注意,MQTT通讯协议是运行在可靠的连接基础上的,想建立可靠的双向通讯链接,最简单的办法是搞定TCP连接。
    今天零妖就先普及一下TCP连接的基本知识(大神可以忽略后面的东西了)。

     


    首先,请你插上网线,或者连上WIFI,或者打开4G网,或者连上3G网。总之,通讯成功的前提是物理链路要OK。拿以太网为例子,插上网线后网口的两个灯会闪烁,这初步证明线路是OK的,好的,接下来我们去搞软件。

    TCP连接是一种保证两个设备可靠地双向交流的技术。一个巴掌拍不响,这里需要两个角色的参与,一个叫作服务端(Server),另一个叫作客户端(Client),一般来说服务端那边是云端的服务器提供的,其计算能力超强,可以同时和好多个客户端建立链接,而客户端只能同时连接一个服务端。就好比我们的老师在课堂上可以和我们大家一起交流,但是我们学生之间不允许说话。
    我们物联网设备在这个TCP连接里,充当的角色是客户端(Client)。我们需要知道服务器那边的IP地址和对应的服务端口,不管我们的设备身处什么地方,只要能上网,那么通过IP地址及其对应的服务端口,我们就能建立TCP连接。然后我们就可以通过MQTT通讯协议和服务器进行数据交流。


    很多情况下,我们是需要使用域名来连接服务器的,比如在浏览器网址输入一个域名,就会自动跳转到对应的IP地址。我们可以通过 Ping 一个域名的方法来获取IP地址。在Windows操作系统中,我们要进入 “命令提示符” 。打开 “运行” ,输入“CMD”即可。比如想知道 http://www.jixin.pro 对应的IP地址是啥,那么直接输入 “ping http://www.jixin.pro ” 然后回车即可。
    注意:一个域名对应的IP地址可能会发生变化,所以如果能够输入域名链接最好。


    我们现在通过TCP助手,演练一个完整的TCP连接流程。我找了两个TCP助手,一个负责模拟Server,另一个负责模拟Client。

     


    好了,基础知识普及篇到这里结束,不懂的要多百度啊。 下一篇咱讲讲MQTT是啥。

    康仔
    康仔 吃瓜群众

    持续关注,很全面!!

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(四)

    请下载今天的附件,因为有表格,所以比论坛上的内容更详细。

    1、MQTT协议是IOT(Internet of Things)领域的一个主流协议

    在物联网的时代,每一个传感器每一个设备都想接入互联网进行数据交换。MQTT协议非常适合这样的场合。目前国内的主流IOT服务器供应商均提供对MQTT协议的解析比如百度云计算,阿里云计算等。MQTT协议的实现也非常简单,对带宽的要求不高,对网络链接的可靠性要求也不高,而且协议本身制定了一定的机制来处理突发事件。

    MQTT协议不仅可以在物联网领域发挥重要作用,同时也可以用于多台机器之间的信息交换比如一个车间里面所有的传感器之间数据的交换。

    MQTT协议也不仅仅局限于运行在互联网通信上。它是一个通信规则,对通信方式的实现不关心。通常我们提到物联网指的是通过 TCP/IP 的方式实现了通信,也就是利用互联网实现,因为互联网可以提供一个非常可靠的双向通信。

    本学习手册根据 MQTT V3.1.1 版本编写
    官方手册下载地址 :http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.doc
    下面章节大部分内容均参考此官方手册。

    2、MQTT 通信协议需要有三个角色参与

    这段文字参考百度云计算的帮助文档:
    https://cloud.baidu.com/doc/IOT/MQTTProtocol.html#.E0.F6.0C.38.86.9F.BE.F8.FD.AC.D9.00.29.12.24.B6

    MQTT协议提到的一个名词 “主题”,类似于文件夹的名字一样。比如小王是电脑的主人,他的电脑上面有a,b两个文件夹,小刘每次存储的文件喜欢放到a文件夹,小宋每次存储的文件喜欢放到b文件夹。那么当小林想看小刘的文件时,只需要看a文件夹就可以了。上述的“a”文件夹的名称,在MQTT协议里面称作 主题 。

    左图诠释了MQTT协议里的三个角色:发布者客户端(负责发送消息),代理服务器(负责接收和分发消息),订阅者客户端(负责接收消息)。
    在MQTT协议里,“主题”就是一个文件夹,发布的消息可以送到一个“主题”里面,订阅者也可以从“主题”里面读取到消息。
    代理服务器在国内有百度的 IoT Hub ,也有阿里云的IoT Hub,还有很多其他品牌的服务器。
    发布者客户端和订阅者客户端既可以是同一台设备,也可以是不同的设备,只要这台设备可以通过服务器的认证,并且遵循MQTT协议,就可以发布或者订阅消息。本学习手册的重要内容就是两个客户端如何与服务器“交流”。


    3、MQTT 通信协议和大数据

    (1)小刘采集的信号是温度信息,他每间隔1分钟就上传一次温度信息到服务器,同时他发送的主题是 a 。
    (2)服务器接收到小刘的温度信息后,会查找当前都有哪些订阅者想看主题是 a 的信息。
    (3)小林订阅了主题是 a 的内容,只要小刘发送一次信息,小林就可以立马接收到对应的信息。
    (4)小刘和小林都需要事先通过账号密码的方式连接到服务器。小刘就像在野外工作的工作人员辛苦采集信号,而小林就像在办公室的老板千里之外洞察前线的一手信息。
    (5)如果有1000个小林这样的角色不停地给服务器发送温度数据。我们都知道服务器有数据保存和数据处理的能力,这时候就可以结合机器学习的相关知识去处理和分析这些数据,从而为人类的决策提供参考。

    4、在MQTT 通信协议里,字符串需要遵守 UTF-8 编码规范

    在MQTT通信协议里,数据传送是以Bit(位)为单位的,和我们常见的TTL串口类似不过他们本质上不是一个东西。MQTT协议约定:数据传送时,高字节在前,同时,每个字节里面的最高位先传输。
    5、MQTT 一帧消息包含的内容

    MQTT 的一帧典型的消息最多由三部分组成:

    固定头(所有的消息必须包含) + 可变头(有些没有) + 有效内容(有些没有)

    MQTT协议约定,根据不同的功能实现,固定头是必须要的,其他两部分内容可有可无(比如心跳包的发送和接收只要固定头即可,而从机发送的链接请求则包含了三个部分)。
    6、后面还有内容,我做成了PDF了,里面有表格啥的,论坛上编辑不方便,你下载查看吧。里面详细讲解了组合一帧报文的过程。附件中还有一个是MQTT协议的中文手册,更权威。

    0零妖
    0零妖 瓜农

    多谢关注支持,感觉不错的话就转发给可能需要的人吧。

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(五)

    打今儿起零妖老哥要开始讲物联网项目的“云端”,让你久等了!在这之前的四篇文章已经普及了以下三个知识点:1,物联网项目需要云端和设备端两个工种协同开发;2,设备端要先连接到互联网,然后要处理上行数据和下行数据;3,物联网设备要走MQTT通讯协议和服务器交互,前提是建立一个TCP连接。


    一个完整的物联网项目开发流程,一定是从云端开始第一步工作的。团队的成员需要坐在一起讨论整个项目需要怎么配合,云端如何实现,设备端如何实现,如何传递数据等。隔行如隔山,前端后台+硬件最低两个工种,思维模式是有差异的,如果没有一个统一的标准,能够坐下来好好谈吗?
    如果以前不能,那看完这篇文章后就一定能。


    阿里云针对物联网领域提供了一个端到端的一站式开发平台,可覆盖各个物联网行业应用场景,主要解决物联网开发领域开发链路长、技术栈复杂、协同成本高、方案移植困难的问题,提供了从硬件设备、模组、数据、服务API、Web应用开发到移动APP开发全链路的开发流程、框架/引擎和调试工具,并可将成熟的开发产出物对接阿里云云市场进行售卖,为开发者实现商业收益。
    这个一站式开发平台叫 Link Develop 。你可以去阿里云官网转转 linkdevelop.aliyun.com


    没注册阿里云帐号的兄弟赶紧去注册了哈,听说淘宝帐号或者支付宝帐号都可以登录的。然后必须实名认证一下,法律规定的哈。最后登录到 linkdevelop.aliyun.com 开通服务就行了,目前来看平台是免费对我们开发者开放的,趁着免费你要抓紧时间去用啊。注册账号的流程零妖就不说了,不懂的地方找阿里云官方的客服MM吧,声音很甜的(别问我咋知道的)。
    有手机的兄弟推荐你下载阿里云手机APP,特别方便。没手机的兄弟得赶紧买个手机了,人联网的时代马上就过去了,现在都物联网了啊。


    下面这个截图先了解一下。零妖在后续的文章将连续讲解两方面的内容:Web应用开发和设备开发。先大概说一下流程:1,在设备开发里定义一个设备模型,遵循ALink协议(下一篇有详细讲解);2,硬件工程师开始设计硬件;3,云端工程师开始编写Web应用。

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(六)

    物联网项目在开发初期,需要云端和设备端两个工种的工程师一起谈谈实现的技术细节。有一个叫作ALink协议的语言,成功解决了两个物种之间交流困难的世纪难题!
    ALink协议是针对物联网开发领域设计的一种数据交换规范。设备端按照这个简单的规范把数据组织一下发送给云端,云端工程师也懂这个简单的规范,可以直接拿这个数据进行处理。同时还解决了调试困难的痛点:云端工程师使用一个叫做MQTT客户端的电脑工具,就可以发送符合ALink协议的测试数据调试云端产品的代码;设备端工程师就可以在给单片机写代码的时候直接组织一个符合ALink协议的测试数据,从而不用依赖云端下发。


    物联网将物理世界的万物接入网络并通过整合各类服务实现智能化。“物”(Things)作为整个网络中的基础节点和商业触手,既是环境信息的采集者,也是智能服务的提供者和承载者。“物”就是设备端。
    你首先需要对物联网中的“物”能做什么,能提供什么样的服务进行描述。这就需要从产品层面进行功能建模,定义物的“属性”(Property)、“服务”(Service)和“事件”(Event)。最简单的情况下你定义一个属性就够了,比如零妖的物联网弹幕器项目,就仅有两个属性。
    通过功能建模将各类设备统一抽象为云端的资源,并对外暴露相应的接口,以满足不同场景下不同系统的调用和快速集成。
    物模型是对设备是什么,能做什么的描述,包括设备身份标识、连接状态、描述信息,以及设备的属性(properties)、服务(services)、事件(events),后三者构成了设备的功能定义。Link Develop通过定义一种物的描述语言来描述物模型,称之为 TSL(即 Thing Specification Language)。


    有一种非常简单的数据格式,叫作JSON字符串,有编程基础的人两分钟就能研究清楚那是什么。ALink协议的数据格式就是JSON字符串的格式。零妖只是提一下而已,ALink协议想读懂根本不用了解啥是JSON,我要开车了,兄弟们请坐好扶稳。

    看到了吧,就是这么简单。上面那个截图就是设备上报自己属性的字符串。设备端发送的数据其实就是那些内容,而且零妖也解释很清楚了。总结一下,就是 <“属性”:数值 >的做法,非常类似 <键:值> 的做法。反正对于单片机来说,想要上报哪个属性,就发送哪个,修改一下后面的数值就行了。
    同理,云端下发的数据也是符合ALink协议的。单片机想解析这些数据就更简单了,简直不要太爽。我们只管记住这些固定的格式就行了,其他的不用修改。上行数据和下行数据在格式上都一样,但是有些固定的地方是不一样的,可以去 https://linkdevelop.aliyun.com/developGuide#kgd6wp.html 查看单个设备的报文,复制你需要的报文,然后修改其中的属性名称和数值,就可以了。
    对于云端开发的工程师来说,要做的工作就是调用阿里云提供的API,往里面扔数据就行了,自己更需要关注的是业务的实现逻辑而不是这些细节问题。云端开发代码的流程零妖会在后面的文章里讲一个小小的Demo,帮助你快速上手。


    你一定正在好奇属性的名称是怎么得到的。零妖告诉你,属性的名称和取值范围是在 LinkDevelop 平台上,“设备开发”里面,定义产品的时候自己选择的。零妖的下一篇文章将会讲解“设备开发”的内容,这部分是在云端完成的工作,也是团队开会时候需要确定的内容。

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(七)

    这一篇文章零妖带你在阿里云的LinkDevelop平台新建一个产品,定义好这个产品要实现的功能,也就是定义好它的属性。 首先去 linkdevelop.aliyun.com 登录你自己的账号,只需要6步即可完成。

    1,为了方便项目的管理,零妖又新建了一个项目,名称啥的都是自己想的。


    2,我们点击产品开发,创建一个新的产品。

    3,这一步工作的重点就是ALink的数据格式,以及所属分类要选择其他。

    4,先添加一个标准的属性,我们搜索温度,选择一个进去。注意看,它的标识符已经是确定的了,这将会是我们发送ALink协议数据时候的参考标准。

    5,零妖又新增了一个自定义的属性。和标准的属性比起来,没啥区别,不过标准属性会在设备调试的时候,显示一个仪表盘给我们汇总数据,这个非常方便。到下一篇调试设备数据文章的时候就知道了。

    6,选择设备开发,新增一个测试设备,直接点击确认就好了。

    7,至此,云端的准备工作就完成了。云端开发的工程师就可以使用MQTT客户端模拟设备发送数据,调试云端代码了;设备端的开发工程师就可以根据测试设备的信息,尝试向服务器发送数据,可以设计硬件电路和开发设备代码了。

    零妖给物联网弹幕器这个设备定义了两个属性:一个是温度属性,标识符是 Indoor Temperature ,另一个的标识符是 DanMu 。这个一定要留意,后面的文章里编写代码的时候都要用到。

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(八)

    这一篇文章零妖老哥将给你展示两个电脑软件的使用方法,将极大地方便你调试与MQTT有关的物联网项目。一个叫MQTT客户端用来模拟设备向云端发送数据和接收云端的数据;另一个叫作MQTT单片机编程小工具,是技小新针对阿里云MQTT服务器连接过程中的痛点,自己编写的一个电脑程序,用来生成连接阿里云MQTT服务器时的账号密码等信息的。


    首先出场亮相的叫 MQTT.fx-1.3.1 的软件,是一个运行在电脑上的MQTT客户端软件,只要填写一下MQTT服务器(比如阿里云的MQTT服务器)的IP地址,端口号,密码等信息,就可以连接到服务器,然后可以向指定的TOPIC发送内容了,当然你也可以订阅指定的TOPIC。



    零妖带你去配置一下这个MQTT客户端,配置好之后就能模拟设备收发数据了。设置之前,你需要进入阿里云的LinkDevelop平台,进入测试设备的页面,我们要复制一些参数;设置参数的过程中,你需要打开技小新的MQTT单片机编程小工具来配合一下。
    如图所示,在设备开发里面的测试设备选项中,你要打开激活凭证,一键复制,到此为止。接下来请出我们的技小新MQTT单片机编程小工具,准备计算一下用户名密码等信息。


    下图列出了阿里云官网给出的,MQTT连接时候的账号密码信息的规则,比较繁琐。零妖老哥根据这个规则写的电脑小软件,可以自动计算这些参数。

    打开技小新MQTT单片机编程小工具,粘贴刚才复制的参数到输入框里面,就可以直接算出来上图中的参数了。
    好了,直接复制一些参数到MQTT客户端里面进行设置就行了。参数如下:
    MQTT域名;端口;ClientID; UserName; Password 。
    如果想发送内容到云端,就复制 “属性上报” TOPIC 到MQTT客户端,发送内容即可,记住发送的内容要符合ALink规范。



    好了,现在你返回到MQTT客户端的界面,点击连接试一下吧,一下子就能连上信不信?
    然后复制一个叫做 “属性上报” 的TOPIC,写一个符合ALink协议规范的字符串,试一下发送数据。


    再进入LinkDevelop 的测试设备的 设备详情 页面查看数据上报结果:



    零妖再从云端下发一个数据,试一下模拟的客户端能否收到。
    需要MQTT客户端,订阅一个叫 “设置设备属性” 的TOPIC 。


    好了,看下图你就明白了,模拟客户端收到的数据也是符合ALink协议规范的,单片机如果接收到这些数据后,就可以解析了。PS:MQTT通讯协议发送的数据是UTF-8格式的,单片机解码时候遇到中文字符就要小心了,具体怎么解决这个问题零妖也会在后续的文章里说的。


    说到了这里你肯定已经猜到了零妖的良苦用心了。
    两个小工具配合使用能模拟一个设备联网,那么云端开发工程师完全就可以拿着小工具直接调试代码了,根本不用管硬件端在干嘛,是不是?该调用API的该写界面的想咋弄咋弄,是不是很爽?
    在LinkDevelop平台里,有一个测试设备的接入,硬件工程师只要能够想办法建立一个TCP连接,连接上阿里云的MQTT服务器,那么就可以在平台上下发数据和测试上报数据,请问还用得着关心云端工程师在干啥吗?努力做好单片机开发就行了,是不是很爽?
    下一篇文章零妖将带你了解一下云端Web应用开发框架 ——Bone 框架!

    Ubuntu
    Ubuntu 吃瓜群众

    坐等更帖。。

    0零妖
    0零妖 瓜农

    物联网全栈教程-从云端到设备(九)

    这一篇文章零妖带你学习全宇宙最简单的网页应用开发框架:Bone Web 框架,这是一个通过敲代码来制作网页的框架,非常适合不需要华丽界面的物联网项目。如果你动手操作,零妖保证三十分钟之内能做出来一个Web应用,体验空前的成就感(深入地做一个好的Web应用就需要你再继续研究了)。
    这篇文章要介绍安装两个电脑软件,用来编写和调试网页代码,顺便再“弄”一个 Hello World 的代码来体验一把网页编写的感觉(别担心,不会让你敲代码的,零妖教你的是如何移植官方提供的例程代码)。下篇文章再介绍如何与阿里云服务器以及我们的物联网设备对接,当然是通过移植例程的方法来做的喽。


    首先安装的是 Node.js 这个软件,版本号是node-v8.11.1。请你打开下面这个网址,通过详细阅读阿里云官方文档来了解如何安装。
    https://bone.aliyun.com/bone-web/bonewebsdk.html?name=zm1rpl
    零妖在这里总结一下安装步骤:
    1:下载Node.js这个软件,并且安装到你的电脑上(就和安装电脑QQ一样简单,如果你不会弄,那老哥也救不了你啊兄弟),这个软件的下载地址如下: http://www.nodejs.org/zh-cn
    2:下载并安装 VSCode 这个软件,这个软件对于90%的程序员来说应该是标配的,自行百度下载。
    3:下载并安装谷歌浏览器,这个可是必备的,要设置为系统的默认浏览器,因为调试代码要用到。
    4:打开Windows的命令行窗口,复制几条命令进去再敲回车就行了。下面会具体说咋弄。
    5:打开 VSCode 这个软件,简单设置一下。下文将会介绍方法。
    6:只需要敲一行代码,助你新建一个Web应用!


    你要保证自己已经安装了Node.js这个软件。
    正式开始之前,你需要去阿里云的 Bone.aliyun.com ,然后点击右上角的登陆,进入Bone开发框架的官网。再点开一个网页,获取一个系统自动分配的账号密码,我们把它叫做“bnpm账号信息”。这个在接下来的安装过程中会用到。


    Windows的电脑系统都会有一个叫做 命令行 的东西,进入的方法如下(WIN10的64位系统):

    进入命令行的界面之后,需要依次运行如下3条命令,你需要复制一条命令,粘贴上去敲回车执行完毕,然后再复制一条执行。
    第一步: npm install -g bnpm –registry=https://npm.aliplus.com/api
    第二步: (这一步要根据提示输入bnpm账号和密码) bnpm login
    第三步: bnpm install -g @bone/bone-cli
    完成。


    接下来设置VSCode这个软件。要保证已经安装了VSCode和谷歌浏览器。好了,打开VSCode吧。


    搜索并安装如下三个插件:
    第一个: Debugger for Chrome
    第二个: npm
    第三个: Node.js Modules Intellisense
    完成。

    至此,开发Web应用(也就是网页)所需要的所有准备工作都已经完成,零妖给你两分钟时间去做人生第一个Web应用 Hello World !
    第一步: 在桌面新建一个文件夹,名字就叫做 Web 吧。你可以自己起名字。
    第二步: 进入这个文件夹,如下图进行操作。

    第三步: 输入 bone init ,然后敲回车,接下来会让你选择要新建的项目类型,我们选择Web应用就行了。让你输入的应用名称和应用ID随便弄个,这次是做测试的,先不要管那么多。

    通过这一行代码,你已经完成了第一个Web应用的创建工作了,接下来零妖老哥教你如何查看你的网页。
    第四步: 输入 bone start ,然后敲回车。等待十几秒左右,谷歌浏览器就会自动弹出来哦!


    谷歌浏览器自动弹出并显示如下信息:


    恭喜你,你的第一个基于Bone开发框架的应用程序,已经通过一行代码完成了!
    不要着急去想什么编程语法,零妖告诉你用这个框架编写代码实质上是符合JS语法规范的,但是你完全不用立马去学习JS语法规则,也不用学习HTML。正确的学习方法是,当你用到某个功能的时候,去找一下官方对这个功能的描述以及提供的例程代码,然后移植它,修改它为己所用即可。
    下一篇文章,咱们来移植一个仪表盘,并打通设备到网页的数据!

    0零妖
    0零妖 瓜农

    已更新!发现写文章比拍视频更困难啊,期不期待技小新的视频教程。

正在查看 15 帖子:1-15 (共 37 个帖子)

抱歉,回复话题必需登录。