Windows配置ThingsBoard,并实现简单Demo(未完待续)

目录

一,配置PostgreSQL

二,配置ThingsBoard

三,Demo


安装环境

  • Windows10
  • Java1.8
  • postgresql-13.3-2-windows-x64.exe
  • thingsboard-windows-3.0

为避免各种权限限制引发意外的错误,在每个涉及命令行的地方,务必以管理员身份运行!(左下角放大镜=》搜索cmd=》右键以管理员身份运行)


参考

@黄小鱼ZZZ【thingsboard在window部署】@徐云鹤 【PostgreSQL 启动失败的解决方案】@何大卫的博客【Postgres psql: 致命错误: 角色 "postgres" 不存在 】基于Windows服务器安装ThingsBoard


一,配置PostgreSQL

下载地址:https://get.enterprisedb.com/postgresql/postgresql-13.3-2-windows-x64.exe

1,随便放个位置,双击运行,一路next,记住密码

如果在双击后出现一堆乱码,类似于这样

一般出现这个问题大部分是因为你的系统用户名有中文字符,需要把它改成英文

2,将PostgreSQL安装文件夹下的bin、lib文件夹的路径放到环境变量Path中

3, 进入安装路径C:\Program Files\PostgreSQL\13\data,清空data目录下的所有文件,否则进行下一步时会报这样的错误

4,进入安装路径C:\Program Files\PostgreSQL\13\bin,打开cmd,依次运行下面的命令

命令一:初始化pgsql

initdb.exe -D ../data

命令二:启动pgsql,启动完以后不要关闭窗口 !!!

pg_ctl.exe start -D ..\data

如果初始化失败

可以使用管理员身份开启命令行执行命令,或者参考这里@徐云鹤 【PostgreSQL 启动失败的解决方案】 ,修改目录的权限

5,进入到安装路径C:\Program Files\PostgreSQL\13\scripts,运行文件runpsql.bat 

可能会出现下面的问题

在postgreSQL的bin下运行命令

createuser -s -r postgres

  

 再次运行文件runpsql.bat 

二,配置ThingsBoard

下载地址:https://github.com/thingsboard/thingsboard/releases/download/v3.1.1/thingsboard-windows-3.1.1.zip

1,步骤一中,最后一步运行文件runpsql.bat 后的窗口不要关闭,用它来创建thingsboard数据库

CREATE DATABASE thingsboard;

2,管理员身份启动cmd,进入thingsboard目录,执行

install --loadDemo

如果在过程中出现 异常、失败(多半是因为权限不够,运行途中被终止,从而进退两难),则需要在命令行执行uninstall命令,然后重启电脑,重新从步骤一中第3步开始执行

3,安装成功后,启动服务(此步必须在管理员启动的cmd中执行,否则服务无法启动)

net start thingsboard

4,访问http://localhost:8080/login,可能会有点延迟,需要等一会

5,登录账户。参考@ 沉迷IoT的森【01学习thingsboard-在Windows部署thingsboard】

后台的系统管理员默认账号

  • 用户名:sysadmin@thingsboard.org
  • 密码:sysadmin

默认租户管理员帐户:

  • 用户名:tenant@thingsboard.org
  • 密码:tenant

演示租户客户:

  • 客户A用户:customer@thingsboard.orgcustomerA@thingsboard.org
  • 客户B用户:customerB@thingsboard.org
  • 客户C用户:customerC@thingsboard.org
  • 所有用户的密码都是“customer”

三,Demo

1,登录默认租户管理员帐户tenant@thingsboard.org,密码tenant

2,创建新设备

 

3,复制访问令牌

4,编写python脚本

import paho.mqtt.client as paho
import json
import time
import random
access = "bYKd6PsaaXVp1OOyt6mK"

broker = "localhost"

port = 1883
def on_publish(client, userdata, result):
    print("sending...")

def on_connect(client, userdata, flag, rc):
    print(str(rc))
    print("connected")

test = paho.Client("device1")
test.on_publish = on_publish
test.on_connect = on_connect
test.username_pw_set(access)
test.connect(broker, port, keepalive=60)
test.loop_start()

while 1:
    data = {
        "温度": random.randint(0, 40),
        "湿度": random.randint(5, 50)
    }
    test.publish('v1/devices/me/telemetry', payload=json.dumps(data), qos=0)
    time.sleep(5)

 5,运行

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值