推荐一款go语言的开源物联网框架-opengw

简介: 推荐一款go语言的开源物联网框架-opengw

推荐一款go语言的开源物联网框架,设计思想不错,值的学习。

官网及驱动下载


http://www.opengw.cn

http://www.opengw.cn/col.jsp?id=104


可执行文件下载


https://gitee.com/my_iot/goAdapter/releases


码云地址


https://gitee.com/my_iot/goAdapter


视频教程


https://www.bilibili.com/video/BV1wg41157m9?from=search&seid=7860625376747338929&spm_id_from=333.337.0.0


背景


框架设计


软件主要分成3层:


  • 应用接口

用于与上层应用系统进行通信,可以设置定时上报硬件设备数据到物联网平台,或者接收物联网平台下发命令,转发给硬件设备;采用Json等格式数据与上层应用系统通信,对接更简单;


  • 采集接口

用于对硬件设备进行管理,支持对设备数量、设备类型、设备属性的增、删、查、改等操作,同时可以设置定时采集设备的属性并缓存,方便上层应用系统对硬件设备操作;

支持采用Lua脚本实现对设备通信协议的编写,方便灵活;


  • 通信接口

对物理通信接口的封装,比如串口、网络、GPIO等,封装接口后对上提供读取和写入2个接口,方便上层调用;


功能特点


  • 采用golang语言设计,运行效率高,跨平台方便;
  • 内置WebServer,网页配置更方便、更快捷
  • 采用Lua脚本,增加设备类型时不需要重新编码后台代码,更方便灵活;
  • 支持MqttClient,ModbusTCPServer,OPCUaServer等通信,采用JSON格式通信,上层系统对接更快捷;
  • 支持CSV文件导入功能,批量添加;
  • 支持配置文件的备份和回复;


可执行文件运行



下载后解压如下图所示:


将所有文件拷贝到硬件中(如果是电脑的,直接运行即可)


  • windows:双击openGW_xx.exe
  • linux系统:./openGW_xx &


然后在浏览器中输入127.0.0.1:8080,注意加上端口,即可正常访问页面


编译运行


1、golang环境搭建及goland安装 大家可以自行百度


2、goland运行


右上角选择编译配置


配置-》运行种类-》选择目录,输出目录选择当前文件夹,即输出文件和webroot等文件在同一级目录


然后在浏览器中输入127.0.0.1:8080,注意加上端口,即可正常访问页面


功能介绍


  1. 通信接口
  2. 采集接口
  3. 应用接口
相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
11月前
|
消息中间件 缓存 NoSQL
Redis各类数据结构详细介绍及其在Go语言Gin框架下实践应用
这只是利用Go语言和Gin框架与Redis交互最基础部分展示;根据具体业务需求可能需要更复杂查询、事务处理或订阅发布功能实现更多高级特性应用场景。
550 86
|
10月前
|
JavaScript 前端开发 Java
【GoWails】Go做桌面应用开发?本篇文章带你上手Wails框架!一步步带你玩明白前后端双端的数据绑定!
wails是一个可以让你使用Go和Web技术编写桌面应用的项目 可以将它看作Go的快并且轻量级的Electron替代品。可以使用Go的功能,并结合现代化UI完成桌面应用程序的开发
1666 5
|
10月前
|
存储 安全 Java
【Golang】(4)Go里面的指针如何?函数与方法怎么不一样?带你了解Go不同于其他高级语言的语法
结构体可以存储一组不同类型的数据,是一种符合类型。Go抛弃了类与继承,同时也抛弃了构造方法,刻意弱化了面向对象的功能,Go并非是一个传统OOP的语言,但是Go依旧有着OOP的影子,通过结构体和方法也可以模拟出一个类。
465 2
|
10月前
|
开发框架 前端开发 Go
【GoGin】(0)基于Go的WEB开发框架,GO Gin是什么?怎么启动?本文给你答案
Gin:Go语言编写的Web框架,以更好的性能实现类似Martini框架的APInet/http、Beego:开源的高性能Go语言Web框架、Iris:最快的Go语言Web框架,完备的MVC支持。
740 1
|
Cloud Native 安全 Java
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
714 1
|
Cloud Native Go API
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
689 0
|
Cloud Native Java Go
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
513 0
|
Cloud Native Java 中间件
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
540 0
|
Cloud Native Java Go
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
1297 0
|
机器学习/深度学习 人工智能 iOS开发

热门文章

最新文章