
工业互联网+边缘计算
文章平均质量分 90
前沿技术动态,技术分享
知者智者
毕业于中国科学院,拥有10多年的大型国企外企工作经验,从事过IPTV系统,3G/4G/5G移动通信, 工业互联网/智能制造等行业的研发工作;主要精通Linux服务器系统端开发,架构设计;十几年的C/C++编程经验,五年Python经验,web前端略懂。目前致力于将前沿互联网技术,5G技术,人工智能应用于工业互联网、智能制造领域,助力中国工业升级换代。发表论文6篇,申请发明专利3项。
展开
-
开源JSON库Rapidjson与cJSON对比
项目需要解析和构造JSON格式的数据,由于项目使用C++编程,所以比较了一下基于C/C++的开源JSON解析库。当前,差不多40多种基于C/C++的开源JSON库在使用,经过一番比较,最终决定在RapidJson和cJSON中选择一个。下面是对这两个库的一个比较详细的对比原创 2021-03-25 11:11:26 · 5769 阅读 · 3 评论 -
Docker Image,Container,Repository的概念理解
在Docker的使用过程中,我们经常说Image,Container,Repository, 他们之间具体是一个什么的关系,又是如何使用的,这里基于自己的理解整理一下。1 Image 镜像1.1 说明Image(镜像):是一个只读的特殊的文件系统,它提供容器运行时所需的程序、库、资源、配置等文件,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。Image采用分层设计,每一层称为“layer”,这些layer存放在/var/lib/docker/<storag.原创 2021-03-19 16:42:57 · 2740 阅读 · 0 评论 -
Docker network driver分类及介绍 Bridge、host、overlay、macvlan(1)
https://docs.docker.com/network/1 分类Docker中的网络驱动(network driver)是可插拔的,docker中默认已经存在了几种网络驱动以提供核心的网络功能,主要有以下几类:bridge: docker 默认的network driver。如果不显示指定driver类型,docker默认会使用bridge模式的network。通常,当应用程序运行在独立的容器中,并且要相互通信,可以使用bridge模式。Bridge模式下容器与docker hos...原创 2021-03-19 16:39:16 · 7880 阅读 · 0 评论 -
Docker Compose network配置
这里是对docker compose 网络配置的一些说明,详细的文档参考:https://docs.docker.com/compose/networking/1 default network如果不显式指定,Compose会为每一个app设置一个default网络。每个service的container会加入这个default网络并且能够被这个网络上的其他container访问到,hostname就是container的name,通过这个hostname可以发现container。注意:原创 2021-01-26 14:28:16 · 12803 阅读 · 0 评论 -
node-red 安装和使用实例
Node-RED是一个可视化物联网编排工具,可基于浏览器的流程编辑器连接设备、服务器和 API 应用。本文介绍在Ubuntu18.04 上的安装和使用。详细的官方文档可以查看https://nodered.org/docs/原创 2021-01-06 20:43:26 · 5390 阅读 · 0 评论 -
Influxdb python API使用说明
InfluxDB官方支持的client库有Arduino, C#, Go, Java, JavaScript, PHP, Python, Ruby. 可以通过连接https://docs.influxdata.com/influxdb/v1.8/tools/api_client_libraries/ 获得说明。这里介绍Python版本的使用。1 下载安装通过github https://github.com/influxdata/influxdb-client-python下载代码包, In原创 2020-11-30 11:15:06 · 2878 阅读 · 0 评论 -
InfluxDB配置总结-通过配置参数和Curl命令
InfluxDB的配置参数位于/etc/influxdb/influxdb.conf0 禁止向influxdb公司汇报信息Influxdb 安装之后,每24小时会自动搜集系统信息发往usage.influxdata.com。关闭此功能,使用参数reporting-disabled。默认值是false, 发送数据。可以改为true,则禁止发送数据。reporting-disabled = false1 开启logLog的开启分两部分,一个是在[logging]部分设置全局的log,另一个在原创 2020-11-30 10:07:48 · 1637 阅读 · 0 评论 -
InfluxDB C++ client支持windows和c++11
influxdb c++ windows库influxdb支持c++11原创 2020-10-30 09:54:33 · 1565 阅读 · 3 评论 -
工业数据存储数据库选型比较
我们将工业互联网、工业大数据首先需要把数据从工业现场采集上来,这是第一步也是基础。海量的数据从工业现场采集之后存在哪里呢?使用什么样的存储方式对后面的数据分析和计算有重要影响。这里对数据库方式的存储进行了一个选型比较。当前的数据库按类型分可以分为实时数据库,时序数据库,NoSQL数据库,关系型数据库。实时数据库是工业领域长时间以来的数据存储方式,很多传统的工业软件厂商都提供实时数据库。今年来,随着物联网的发展,时序数据库的应用也越来越广。1 实时数据库一般具备的特点高速写入的能.原创 2020-10-22 15:01:31 · 6545 阅读 · 3 评论 -
Odoo14.0源码安装和系统搭建配置
Odoo 是基于Python写的一系列开源ERP应用程序套装,前身是OpenERP。此套装可满足中小型企业的一切应用需求,例如,企业基本的进销存、采购、销售、MRP生产制造、品保质量保障、企业招聘、员工合同、休假、午餐管理、内部论坛、车队管理、内部聊天IM沟通、客诉追溯管理、CRM客户关系管理、VOIP、E-Shop电子商务、网店、企业官方网站,财务会计、银行对账、资产管理、HR工资管理、预算管理、WMS仓库库存管理、POS街边小摊、社区商店、项目管理、条码、PLM等等这里介绍如何通过源码安装和搭建原创 2020-10-21 17:19:48 · 9888 阅读 · 3 评论 -
InfluxDB C++库介绍和使用
InfluxDB C++库介绍和使用InfluxDB是现在使用排名最高的开源时序数据库,官方提供很多种语言的API进行库操作,包括Go、Java、JavaScript、JavaScript (Node.js)、PHP、Python等等,但是却不提供C++的支持。对于需要使用C++语言操作InfluxDB的场景,就有点麻烦。还好,gitbub上Influxdb-cxx项目提供了C++的方案。这里介绍一下Influxdb-cxx的编译、裁剪和使用。需要注意的是,Influxdb-cxx需要使用支持C++原创 2020-10-19 10:50:44 · 6731 阅读 · 11 评论 -
snap7与西门子PLC连接配置
S7协议是西门子PLC使用的通信协议,可以使用开源的Snap7库实现上位机与西门子PLC之间的通信。并不是所有的西门子PLC都可以用Snap7通信,比如S7 300/400/WinAC CPU可以完全支持S7, S7 1200/1500 CPU支持扩展的S7而且需要在TIA博图中做一些额为配置才能使用。本文就是介绍如何通过TIA博图配置PLC,以能够通过snap7读写PLC原创 2020-09-08 14:29:15 · 5587 阅读 · 0 评论 -
Nvidia Xavier(ARM64)上安装openresty
OpenResty官方提供了大多数Linux发行版的预编译的包,所以安装非常简单,可以直接参考http://openresty.org/cn/installation.html 进行安装。但是官方的二进制包只支持X86_64 和AMD64 的CPU,如果需要在ARM CPU上安装openresty就需要从源码开始安装了。这里介绍在Nvidia的Jetson Xavier 套件上安装openrety的方法, 使用的操作系统为ubuntu18.04。原创 2020-07-10 17:07:38 · 1149 阅读 · 0 评论 -
MQTT协议三种QOS学习
MQTT协议中有三种消息发布服务质量:QOS0: “至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。QOS1: “至少一次”,确保消息到达,但消息重复可能会发生。QOS2: “只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。1 MQTT协议流程图2 QOS0 流程图3 QOS1流程图4 QOS2..转载 2020-05-27 23:08:54 · 4689 阅读 · 0 评论 -
基于python的Modbus/MQTT/S7/OPCUA库总结
本文列出了基于python开发的S7/Modbus/OPCUA/MQTT库:Modbus: Modbus_tk, Pymodbus, Minimalmodbus, UmodbusMQTT: pahoS7: python-snap7OpcUa: python-opcua介绍了安装,使用手册和例子。具体的用法需要结合使用手册深入学习。1 modbus1.1主流modbus python库Modbus_tkPymodbusMinimalmodbusUmo...原创 2020-05-27 22:54:27 · 3375 阅读 · 0 评论 -
基于Nginx+nginx-rtmp-module实现 RTMP web流媒体方案
Nginx配合插件nginx-rtmp-module可以做RTMP流媒体服务器,实现RTMP的拉流和推流。本方案可以用于摄像头通过4G/5G DTU模块推流RTMP到云服务器上的nginx服务器,然后通过web查看摄像头实时数据;配合DTU推流模块可以用于RMTP直播服务器; 配合ffmpeg也可以用于视频文件转RTMP流媒体服务器.本方案使用Ubuntu18.04操作系统,其他的linux发行版替换使用相应的安装命令即可。原创 2020-04-24 22:25:28 · 3317 阅读 · 1 评论 -
mosquitto通配符订阅topic和桥接模式详解
本文介绍了mosquitto如何使用通配符订阅话题和两个通配符的详细用法; 同时,介绍了如何使用桥接模式及桥接模式的意义原创 2020-04-24 22:04:08 · 3829 阅读 · 0 评论 -
mosquitto查看系统状态信息
客户端可以通过订阅$SYS树来查询broker的信息。标记为static的topic只在客户端订阅时发送一次,其他的topic会每隔sys_interval 秒更新一次, 如果sys_interval 为0,则不会发送更新。注意,如果使用命令行与$SYS topic交互,shell会把$解析为环境变量,所以需要将topic用单引号括起来例如’ $SYS/...’或者使用转义字符,例如 \$SY...原创 2020-04-24 21:53:54 · 5664 阅读 · 1 评论 -
mosquitto启动参数详解
本文介绍mosquitto启动时的命令行参数。命令格式mosquitto[-cconfig file] [ -d | --daemon ] [-pport number] [-v]参数说明-c,--config-file指定配置文件,如果不指定,则使用mosquitto.conf 文件中配置的参数。-d,--daemon运行为后台守护进程.-p,--port...原创 2020-04-24 21:47:57 · 1900 阅读 · 1 评论 -
Mosquitto安装配置和使用指南
Mosquitto是一个开源的C实现的MQTT服务器和客户端。本文介绍Mosquitto的编译,安装,配置和使用。0 MQTT协议MQTT协议已经到了5.0版本,每个版本的协议内容可以如下获取:MQTT 3.1.1 中文版 http://mqtt.p2hp.com/mqtt311英文版 http://docs.oasis-open.org/mqtt/mqtt/v3.1.1...原创 2020-04-22 22:30:59 · 7214 阅读 · 0 评论 -
mosquitto 配置详解(3): bridge的配置
bridge相关的所有配置参数翻译 2020-04-22 13:56:55 · 2284 阅读 · 0 评论 -
mosquitto 配置详解(2):listener的通用配置项和SSL/TLS的支持
本部分是Listener的配置,包括通用配置项,基于认证的SSL/TLS支持,基于PSK的SSL/TLS支持翻译 2020-04-21 22:56:39 · 4023 阅读 · 0 评论 -
mosquitto 配置详解(1):认证鉴权和通用配置项
mosquitto 的认证鉴权和通用配置项 配置翻译 2020-04-21 22:51:52 · 5688 阅读 · 0 评论 -
mosquitto_passwd 用法中文说明
mosquitto_passwd是一个工具,用来管理mosquitto server的password 文件。运行man mosquitto_passwd可以看到mosquitto_passwd的完整用法。这里给翻译成中文翻译 2020-04-20 16:08:57 · 3048 阅读 · 0 评论 -
海康摄像头如何查看IP,重置密码
本文主要介绍海康摄像头在忘记IP时,如何查看IP;在忘记密码时,如何重置密码;以及如何查看配置参数,例如RTSP端口号,HTTP端口号,编码格式,帧率等。1 查看IP海康威视的IP网络摄像头长时间不用了,IP地址忘记了怎么办呢?可以使用海康威视的SADPTool工具。海康威视设备网络搜索SADP是一款用于搜索在线设备的工具软件。它可以搜索同一局域网内所有在线的设备,并且可以...原创 2020-04-08 15:51:49 · 100491 阅读 · 1 评论 -
一个基于Telegraf+InfluxDB+Grafana的数据采集、存储和可视化分析解决方案
1 引言不管是在互联网,大数据,物联网 还是工业大数据领域,数据的采集、预处理、存储和可视化展示分析都是不可或缺的功能。如下图所示的一个数据全生命周期服务图:本文提供一种基于Telegraf+InfluxDB+Grafana的数据采集、存储和可视化分析解决方案。Telegraf is used to pre-process data according to customer...原创 2020-04-02 11:25:48 · 1317 阅读 · 0 评论 -
几款BI 领域常用软件分析
比较了一下几款BI软件或者插件:FineReport, CBoard, Pentaho, Reportico, Ureport2,Echarts 软件名称 是否开源 功能 易用性 稳定性 技术栈 社区活跃程度 FineReport ...原创 2020-04-02 11:05:12 · 881 阅读 · 0 评论 -
Ureport2 安装,配置及问题详解
Ureport2 安装,配置及问题详解本文详细介绍了笔者Ureport2的安装,配置以及在此过程中遇到的问题和解决方法。本安装 基于IDEA+SpringBoot, 存储使用mysql数据库1 pre-condition1)首先需要安装IDEA, jdk8, ...原创 2020-04-02 10:56:43 · 10469 阅读 · 4 评论 -
CBoard 安装配置 实战
本文章详细介绍了CBoard的安装配置和使用,并记录了遇到的问题和解决方法。介绍了在Linux和windows 下的两种安装方法。原创 2020-04-02 10:38:34 · 1884 阅读 · 0 评论 -
主流modbus python库比较
主流modbus python库比较主流modbus python库比较minimalmodbus 使用主流modbus python库当前,用的比较多的Modbus python 库主要有以下几种:Modbus_tk Pymodbus MinimalmodbusUmodbus比较库名称安装源码3rd party依赖主要功能modbus_tkpip i...原创 2020-04-01 17:05:05 · 7693 阅读 · 0 评论 -
Grafana worldmap-panel 使用总结 with InfluxDB
Grafana worldmap panel 使用总结worldmap ,介绍如何使用influxDB, 表定义,Geohash 值怎么计算,Worldmap panel 配置, query 数据,视图配置,Trouble shootingworldmap-panel出现无法显示地图或者加载非常缓慢原创 2020-04-01 16:12:11 · 3747 阅读 · 5 评论