《2021爱智先行者—初体验-图文解析精灵1号边缘计算机的安装与调试、启动自带的WiFi路由器功能、编写安装一个计算器小程序》

Amoor123 2021爱智先行者 2021-11-19 11:23:14

【本文正在参与"2021爱智先行者-征文大赛"活动】活动页面链接:https://bbs.csdn.net/topics/602601454

客服小姐姐说要复制下发到这里,我就再来发一遍~

一、组装与连接网络过程中的一些问题与解决办法
1.组装
前几天收到了EdgeOS Sprit 1,非常新奇的一款边缘计算机,以前从来没搞过,这次趁着CSDN官方一起举办活动,我就申请了一台体验,没想到很快就到了。
先是组装,这个先看看说明书,关键的是四根天线的装法。

在这里插入图片描述
写的很明确,天线里有一根是和其他几根不一样的,分为公头和母头。连接的时候差不多就行了,不要太用力,太用力可能会把里面的螺丝带着线一直转圈。

 在这里插入图片描述

 

2.联网
将机器与路由器用网线连接,连接的时候机器端一定要插在wan口,而不是lan口,好多无线路由器是随便插的,但这个可能会没有网。

3.激活
安卓的是在应用商店搜索爱智来下载app的,说明书和机器后方的二维码是苹果用的,我的手机是小米应用商店,能够搜索到,下面的是安卓的教程,苹果的仅供参考。
Spirit通电后,先要用手机连接机器自己的wifi,而不是别的家里WiFi。

在这里插入图片描述
3.1 搜索设备连接不了的方法
这里我搜索到了设备,但是点击他就是不行,跳不出来激活界面。
后来我发现点击屏幕按住可以看到设备的ip,选择了手动连接,试了一下就连接成功了。这个机器基本上都是这个ip,这是机器自己作为路由器的IP,我们也可以在WiFi信息界面的路由器看到。

在这里插入图片描述 

 


3.2 激活设备老是出问题的解决方案

出现这种情况,可能是设备找不到自己的网络,默认是动态ip的网络,我这里尝试在联网方式那里用静态ip手动配网。在主路由器设备列表里找到这台设备,记住他的ip,然后设置好网关地址,子网掩码,他的ip,首选DNS之后(可以设置114.114.114.114),就大功搞成啦。细节看下面图片。

在这里插入图片描述

 在这里插入图片描述

在这里插入图片描述 

 

3.3 设备的连接感悟
注册成功后会有一些别的账号,WiFi设置,这个就没有困难了,一路绿灯,直到看到系统界面。
我一开始接的是分支路由器,不成功以为是路由器问题,换到主路由之后,还是那样,后来发现是ip需要自己调整设置下。我从探索到成功花了1个小时,你只需要看这篇文章,10分钟搞定。

在这里插入图片描述
二、最简单的功能实现——WiFi路由器
WiFi路由器的功能是一插上自己的主路由就有的,非常适合家里的设备不是自带WiFi功能的小伙伴们。
基本设置就是界面中的路由器模块,点开后可以看到自己的设备网络的运行情况,左上角的设置可以做一些参数修改。因为天线是2.4GHz的,WiFi的速度肯定没有5GHz的快,但响应速度也算是可以的。

 在这里插入图片描述

 


1.设置界面

在这里插入图片描述
2.宽带连接
宽带连接即是我们来连接互联网的,用来设置我们这个设备与主路由设备之间的连接,这个基本上不用再做修改,除非设备换了地方。

 在这里插入图片描述

 

 


3.局域网
局域网即是设备自己作为路由器的网络,控制的是连接他的设备的ip段

在这里插入图片描述
4.无线局域网
无线局域网就是WiFi功能的主体,他可以在其中做一些设置,功能基本和普通WiFi是一样的,没有中继的功能,但也可以隐藏ssid,设置密码

在这里插入图片描述 

 


4.1 网速
无线网速的话我试了感觉处理速度在宽带150Mbps左右,因为是1000M宽带,接的是1000M端口。
网线用的是屏蔽双绞线,所以速度不会被网线和主路由影响,多台手机同时连接下载的话速度明显降低了。

在这里插入图片描述
4.2 延迟
延迟的话还可以,可能要比普通的路由器好一些,打开王者荣耀基本上没有增加延迟。

在这里插入图片描述 

 

4.3 信号强度
信号强度的话和电信自带的设备差不多,在4-5层墙和20多米距离上信号几乎衰减完了

在这里插入图片描述
三、开发的准备工作
1.开发工具准备并创建一个项目
VSCode,可以在官网下载,在插件中搜索edger,会出来公司做的一个插件,用来启动项目,喜欢看中文的还可以装一个语言插件
然后在左侧栏目的最下方EDGEROS中可以看到创建项目的按钮,然后按照简单模板进行创建,填入一些简单的项目名、包名信息。

在这里插入图片描述 

 


2.证书安装
在官网https://www.edgeros.com/edgeros/guide/start/install_ca.html,下载证书,并点击安装到受信任的根证书目录

3.设备开启开发模式
在设备设置中找到开发模式

在这里插入图片描述

 

在其中开启,记住自己的密码

在这里插入图片描述
4.电脑对设备安装应用
启用开发模式之后,电脑连接Spirit的网络(192.168.128.1那个WiFi)
然后在左侧栏目中设备管理选项卡进行配置即可添加设备
添加后点击设备项目的第一个按钮即可传输应用到设备中,

在这里插入图片描述 

 


此时自己的设备界面就有了这个demo,点开是一个hello world小程序

在这里插入图片描述

 

大家也可以在这个github中找其他的模板进行启动开发

在这里插入图片描述

 

启动时从存储库克隆,但是可能网不太好用


四、利用JS脚本写一个简单的计算器程序
就在原来的简单示例代码上修改
修改的是public文件夹下的index.html,VSCode所有代码要在编辑后手动保存

代码来源是这个,做了组装:https://www.jb51.net/article/75236.htm
代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>计算器</title>
  <style type="text/css">
        /*Basic reset*/
        *{
          margin:0;
          padding:0;
          box-sizing: border-box;
          font: 14px Arial,sans-serif;
        }
        html{
          height:100%;
          background-color:lightslategrey;
        }
        
        #calculator{
          margin: 15px auto;
          width:330px;
          height:400px;
          border: 1px solid lightgray;
          background-color:darkgrey;
          padding:15px;
        }
        
        /*LOGO*/
        .LOGO{
          height:20px;
        
        }
        .LOGO .name{
          float:left;
          line-height:30px;
        }
        .LOGO .verson{
          float:right;
          line-height:30px;
        }
        /*screen*/
        #shuRu{
          margin-top:15px;
        }
        .screen{
          margin-top:5px;
          width:300px;
          height:40px;
          text-align: right;
          padding-right:10px;
          font-size:20px;
        }
        #keys{
          border:1px solid lightgray;
          height:223px;
          margin-top:25px;
          padding:8px;
        }
        #keys .last{
          margin-right:0px;
        }
        .footer{
          margin-top:20px;
          height:20px;
        }
        .footer .link{
          float:right;
        }
        
        #keys .buttons{
          float:left;
          width: 42px;
          height: 36px;
          text-align:center;
          background-color:lightgray;
          margin: 0 17px 20px 0;
        }
  </style>
</head>
<body onload="onLoad()">
<div id="calculator">
  <div class="LOGO">
    <span class="name">简单的计算器</span>
    <span class="verson">v1.0</span>
  </div>
  <div id="shuRu">
    <!--screen输入栏-->
    <div class="screen">
      <input type="text" id="screenName" name="screenName" class="screen" value="" onfocus="jsq(this)">
    </div>
  </div>
  <div id="keys">
    <!-- operators and other keys -->
    <!--第一排-->
    <input type="button" id="7" onclick="jsq(this.id)" value="7" class="buttons">
    <input type="button" id="8" onclick="jsq(this.id)" value="8" class="buttons">
    <input type="button" id="9" onclick="jsq(this.id)" value="9" class="buttons">
    <input type="button" id="Back" onclick="tuiGe()" value="Back" class="buttons">
    <input type="button" id="C" onclick="clearNum()" value="C" class="buttons" style="margin-right:0px">
    <!--第二排-->
    <input type="button" id="4" onclick="jsq(this.id)" value="4" class="buttons">
    <input type="button" id="5" onclick="jsq(this.id)" value="5" class="buttons">
    <input type="button" id="6" onclick="jsq(this.id)" value="6" class="buttons">
    <input type="button" id="*" onclick="jsq(this.id)" value="*" class="buttons">
    <input type="button" id="/" onclick="jsq(this.id)" value="/" class="buttons" style="margin-right:0px">
    <!--第三排-->
    <input type="button" id="1" onclick="jsq(this.id)" value="1" class="buttons">
    <input type="button" id="2" onclick="jsq(this.id)" value="2" class="buttons">
    <input type="button" id="3" onclick="jsq(this.id)" value="3" class="buttons">
    <input type="button" id="+" onclick="jsq(this.id)" value="+" class="buttons">
    <input type="button" id="-" onclick="jsq(this.id)" value="-" class="buttons" style="margin-right:0px">
    <!--第四排-->
    <input type="button" id="0" onclick="jsq(this.id)" value="0" class="buttons">
    <input type="button" id="00" onclick="jsq(this.id)" value="00" class="buttons">
    <input type="button" id="." onclick="jsq(this.id)" value="." class="buttons">
    <input type="button" id="%" onclick="jsq(this.id)" value="%" class="buttons">
    <input type="button" id="eva" onclick="eva()" value="=" class="buttons" style="margin-right:0px">
  </div>

</div>


<script>
  var num = 0; // 定义第一个输入的数据
  function jsq(num) {
    //获取当前输入
    document.getElementById('screenName').value += document.getElementById(num).value;
  }
  function eva() {
    //计算输入结果
    document.getElementById("screenName").value = eval(document.getElementById("screenName").value);
  }
  function clearNum() {
    //清0
    document.getElementById("screenName").value = null;
    document.getElementById("screenName").focus();
  }
  function tuiGe() {
    //退格
    var arr = document.getElementById("screenName");
    arr.value = arr.value.substring(0, arr.value.length - 1);
  }
  function onLoad(){
    //加载完毕后光标自动对应到输入框
    document.getElementById("screenName").focus();
  }
</script>
</body>
</html>

然后再保存后推送给Spirit安装就可以使用啦

在这里插入图片描述
毕竟是支持JS语法的代码的,所以很多程序都能实现,大家可以试试看。

 

五、体验总结和建议
总体而言,精灵一号的体验是不错的,好的方面很多,这个设备支持js语言开发,功能丰富,官方也有很多示例文档和代码。
但作为物联网设备,我感觉更多的是设备接入和调用的方法要多明确一下,我家里其实有好多的智能设备,我对着空调也是扫了半天也不知道自己该怎么连接,这个方面感觉还是要多和其他厂家沟通下,开发更多的接口出来,说不定这个就能成为家庭智能设备控制系统的核心计算机了。
在使用过程中也发现这个设备安装程序的时候,手机控制端容易断开,WiFi是连着的,但是软件打开是显示未连接;网络也有点不稳定,偶尔会断网。希望能有更好的用户体验

以上是我的初次体验感悟,如有不足,请多批评指正!

【本文正在参与"2021爱智先行者-征文大赛"活动】活动页面链接:https://bbs.csdn.net/topics/602601454
 

...全文
385 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,566

社区成员

发帖
与我相关
我的任务
社区描述
爱智开发者平台是一个开放的物联网平台,通过爱智世界,应用开发者可以把自己的应用分发到亿万用户的设备上,硬件开发者能够把设备能力开放给海量的开发者,让优质的应用脱颖而出,为用户提供更优秀的使用体验。
边缘计算物联网javascript 企业社区
社区管理员
  • EdgerOS
  • Lumos_zbj
  • dayinfinite
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧