ソースを参照

2020智能照明安装指南

master
qdjjx 4年前
コミット
945179755c

+ 373
- 0
实践/安装/2020智能照明安装指南.md ファイルの表示

@@ -0,0 +1,373 @@
1
+# TeamViewer
2
+
3
+```
4
+--TeamViewer注册邮箱
5
+https://exmail.qq.com/login
6
+darren@ddingsafe.com
7
+TecheDing2019
8
+
9
+--TeamViewer账号
10
+激活码:09-32504-807106-224267
11
+邮箱:darren@ddingsafe.com
12
+密码:DingTeam2019
13
+
14
+--诺德
15
+伙伴ID: 1274815081
16
+密码:teche
17
+
18
+--展厅
19
+伙伴ID:1 724 163 309
20
+密码:75s4tn
21
+```
22
+
23
+# 服务器
24
+
25
+```
26
+--诺德
27
+用户名:Administrator
28
+密码:TecheFwd123
29
+
30
+--展厅
31
+服务器IP:192.168.9.108
32
+用户名:Administrator
33
+密码:teche123
34
+187ED5314E0C: 192.168.9.118
35
+187ED53159E4: 192.168.9.126
36
+
37
+--云端
38
+服务器地址: 47.103.61.198
39
+用户名:administrator
40
+密码:Teche123
41
+云端智能照明接口文档:http://47.103.61.198:5001/swagger/index.html 
42
+```
43
+
44
+# 网站
45
+
46
+```
47
+--诺德
48
+管理员:DrrnFwd2018
49
+设备管理员:shebei 888888
50
+
51
+--展厅
52
+管理员用户名:13800000000
53
+密码:TecheFwd2018
54
+```
55
+
56
+# 安装文件
57
+
58
+```
59
+dd-dist_v...:各个版本的程序源代码
60
+dd-env: 运行环境
61
+dd-tools:其它工具,比如局域网内查找IP
62
+```
63
+
64
+# 版本
65
+
66
+```
67
+--v1.1.5.3和nuode_stable:利群诺德使用稳定的版本,以nuode_stable为准。使用的是.NET Core 2.0
68
+--v1.1.5.3,在诺德的基础上加了时序数据库以及和上传数据给云端,但没有严格测试过。使用的是.NET Core 2.0
69
+--v1.0.0.0,使用的是.NET Core 3.0和云端关系数据库和时序数据库连接
70
+```
71
+
72
+# 给开关编地址
73
+
74
+- 手机直联:手机直联模块,密码88888888
75
+- 添加模块:手机APP添加电线,密码admin
76
+- 组装:把电源、模块、开关组装好,所有保持分断状态
77
+- 进入设置状态:在手机APP设置线路里让所有开关进入设置状态,设置状态的标志是开关橙色指示灯闪烁
78
+- 从左到右依次按下开关上的橙色按钮
79
+- 结束设置状态:在手机APP按结束设置按钮
80
+- 手动编写地址: 按12秒进入设置状态,按几下就是地址编号,再按12秒退出设置状态
81
+
82
+# 修改模块指向
83
+
84
+- 如果指向云端,先连接本地局域网,在APP内设置
85
+- 进入模块管理后台设置指向:192.168.0.131:82 root abc123 mandun_url 192.168.0.252:8080/ebx-biship/data/carry
86
+
87
+# .NET Core运行时环境
88
+
89
+# MySQL
90
+
91
+- 安装:NT-mysql-Install.bat, 在服务中多出MySql服务
92
+- 配置:my.ini, bind-address=0.0.0.0 port=3306 skip_grant_tables
93
+- 启动:NT-mysql-start.bat, 在进程中多了mysqld.exe
94
+- 安装客户端:Navicat
95
+- 连接MySQL: 主机名或IP地址:localhost;端口:3306;用户名:root;密码:lcDb_!@34%^_Mantunsci
96
+
97
+# Redis
98
+
99
+- 安装:NT-redis-Install.bat
100
+- 启动:NT-redis-Start.bat
101
+- 安装客户端:RedisDesktopManager
102
+- 连接Redis: 地址:127.0.0.1;端口:6321;验证:_ebx_cnto_r_srv;安全:无
103
+
104
+# teche数据库
105
+
106
+```
107
+数据库名:teche
108
+字符集:utf8mb4--UTF-8 Unicode
109
+排序规则:utf8mbs_general_ci
110
+```
111
+
112
+# techeusr数据库
113
+
114
+```
115
+数据库名:techeusr
116
+字符集:utf8mb4--UTF-8 Unicode
117
+排序规则:utf8mbs_general_ci
118
+```
119
+
120
+# quartznet数据库
121
+
122
+```
123
+数据库名:quartznet
124
+字符集:utf8mb4--UTF-8 Unicode
125
+排序规则:utf8mbs_general_ci
126
+
127
+# By: Ron Cordell - roncordell
128
+#  I didn't see this anywhere, so I thought I'd post it here. This is the script from Quartz to create the tables in a MySQL database, modified to use INNODB instead of MYISAM.
129
+
130
+
131
+# make sure you have UTF-8 collaction for best .NET interoperability
132
+# CREATE DATABASE quartznet CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
133
+
134
+DROP TABLE IF EXISTS QRTZ_FIRED_TRIGGERS;
135
+DROP TABLE IF EXISTS QRTZ_PAUSED_TRIGGER_GRPS;
136
+DROP TABLE IF EXISTS QRTZ_SCHEDULER_STATE;
137
+DROP TABLE IF EXISTS QRTZ_LOCKS;
138
+DROP TABLE IF EXISTS QRTZ_SIMPLE_TRIGGERS;
139
+DROP TABLE IF EXISTS QRTZ_SIMPROP_TRIGGERS;
140
+DROP TABLE IF EXISTS QRTZ_CRON_TRIGGERS;
141
+DROP TABLE IF EXISTS QRTZ_BLOB_TRIGGERS;
142
+DROP TABLE IF EXISTS QRTZ_TRIGGERS;
143
+DROP TABLE IF EXISTS QRTZ_JOB_DETAILS;
144
+DROP TABLE IF EXISTS QRTZ_CALENDARS;
145
+
146
+CREATE TABLE QRTZ_JOB_DETAILS(
147
+SCHED_NAME VARCHAR(60) NOT NULL,
148
+JOB_NAME VARCHAR(60) NOT NULL,
149
+JOB_GROUP VARCHAR(60) NOT NULL,
150
+DESCRIPTION VARCHAR(250) NULL,
151
+JOB_CLASS_NAME VARCHAR(250) NOT NULL,
152
+IS_DURABLE BOOLEAN NOT NULL,
153
+IS_NONCONCURRENT BOOLEAN NOT NULL,
154
+IS_UPDATE_DATA BOOLEAN NOT NULL,
155
+REQUESTS_RECOVERY BOOLEAN NOT NULL,
156
+JOB_DATA BLOB NULL,
157
+PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP))
158
+ENGINE=InnoDB;
159
+
160
+CREATE TABLE QRTZ_TRIGGERS (
161
+SCHED_NAME VARCHAR(60) NOT NULL,
162
+TRIGGER_NAME VARCHAR(60) NOT NULL,
163
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
164
+JOB_NAME VARCHAR(60) NOT NULL,
165
+JOB_GROUP VARCHAR(60) NOT NULL,
166
+DESCRIPTION VARCHAR(250) NULL,
167
+NEXT_FIRE_TIME BIGINT(19) NULL,
168
+PREV_FIRE_TIME BIGINT(19) NULL,
169
+PRIORITY INTEGER NULL,
170
+TRIGGER_STATE VARCHAR(16) NOT NULL,
171
+TRIGGER_TYPE VARCHAR(8) NOT NULL,
172
+START_TIME BIGINT(19) NOT NULL,
173
+END_TIME BIGINT(19) NULL,
174
+CALENDAR_NAME VARCHAR(60) NULL,
175
+MISFIRE_INSTR SMALLINT(2) NULL,
176
+JOB_DATA BLOB NULL,
177
+PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP),
178
+FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP)
179
+REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP))
180
+ENGINE=InnoDB;
181
+
182
+CREATE TABLE QRTZ_SIMPLE_TRIGGERS (
183
+SCHED_NAME VARCHAR(60) NOT NULL,
184
+TRIGGER_NAME VARCHAR(60) NOT NULL,
185
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
186
+REPEAT_COUNT BIGINT(7) NOT NULL,
187
+REPEAT_INTERVAL BIGINT(12) NOT NULL,
188
+TIMES_TRIGGERED BIGINT(10) NOT NULL,
189
+PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP),
190
+FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
191
+REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP))
192
+ENGINE=InnoDB;
193
+
194
+CREATE TABLE QRTZ_CRON_TRIGGERS (
195
+SCHED_NAME VARCHAR(60) NOT NULL,
196
+TRIGGER_NAME VARCHAR(60) NOT NULL,
197
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
198
+CRON_EXPRESSION VARCHAR(120) NOT NULL,
199
+TIME_ZONE_ID VARCHAR(80),
200
+PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP),
201
+FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
202
+REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP))
203
+ENGINE=InnoDB;
204
+
205
+CREATE TABLE QRTZ_SIMPROP_TRIGGERS
206
+  (          
207
+    SCHED_NAME VARCHAR(60) NOT NULL,
208
+    TRIGGER_NAME VARCHAR(60) NOT NULL,
209
+    TRIGGER_GROUP VARCHAR(60) NOT NULL,
210
+    STR_PROP_1 VARCHAR(512) NULL,
211
+    STR_PROP_2 VARCHAR(512) NULL,
212
+    STR_PROP_3 VARCHAR(512) NULL,
213
+    INT_PROP_1 INT NULL,
214
+    INT_PROP_2 INT NULL,
215
+    LONG_PROP_1 BIGINT NULL,
216
+    LONG_PROP_2 BIGINT NULL,
217
+    DEC_PROP_1 NUMERIC(13,4) NULL,
218
+    DEC_PROP_2 NUMERIC(13,4) NULL,
219
+    BOOL_PROP_1 BOOLEAN NULL,
220
+    BOOL_PROP_2 BOOLEAN NULL,
221
+    TIME_ZONE_ID VARCHAR(80) NULL,
222
+    PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP),
223
+    FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) 
224
+    REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP))
225
+ENGINE=InnoDB;
226
+
227
+CREATE TABLE QRTZ_BLOB_TRIGGERS (
228
+SCHED_NAME VARCHAR(60) NOT NULL,
229
+TRIGGER_NAME VARCHAR(60) NOT NULL,
230
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
231
+BLOB_DATA BLOB NULL,
232
+PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP),
233
+INDEX (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP),
234
+FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
235
+REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP))
236
+ENGINE=InnoDB;
237
+
238
+CREATE TABLE QRTZ_CALENDARS (
239
+SCHED_NAME VARCHAR(60) NOT NULL,
240
+CALENDAR_NAME VARCHAR(60) NOT NULL,
241
+CALENDAR BLOB NOT NULL,
242
+PRIMARY KEY (SCHED_NAME,CALENDAR_NAME))
243
+ENGINE=InnoDB;
244
+
245
+CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS (
246
+SCHED_NAME VARCHAR(60) NOT NULL,
247
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
248
+PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP))
249
+ENGINE=InnoDB;
250
+
251
+CREATE TABLE QRTZ_FIRED_TRIGGERS (
252
+SCHED_NAME VARCHAR(60) NOT NULL,
253
+ENTRY_ID VARCHAR(140) NOT NULL,
254
+TRIGGER_NAME VARCHAR(60) NOT NULL,
255
+TRIGGER_GROUP VARCHAR(60) NOT NULL,
256
+INSTANCE_NAME VARCHAR(60) NOT NULL,
257
+FIRED_TIME BIGINT(19) NOT NULL,
258
+SCHED_TIME BIGINT(19) NOT NULL,
259
+PRIORITY INTEGER NOT NULL,
260
+STATE VARCHAR(16) NOT NULL,
261
+JOB_NAME VARCHAR(60) NULL,
262
+JOB_GROUP VARCHAR(60) NULL,
263
+IS_NONCONCURRENT BOOLEAN NULL,
264
+REQUESTS_RECOVERY BOOLEAN NULL,
265
+PRIMARY KEY (SCHED_NAME,ENTRY_ID))
266
+ENGINE=InnoDB;
267
+
268
+CREATE TABLE QRTZ_SCHEDULER_STATE (
269
+SCHED_NAME VARCHAR(60) NOT NULL,
270
+INSTANCE_NAME VARCHAR(60) NOT NULL,
271
+LAST_CHECKIN_TIME BIGINT(19) NOT NULL,
272
+CHECKIN_INTERVAL BIGINT(19) NOT NULL,
273
+PRIMARY KEY (SCHED_NAME,INSTANCE_NAME))
274
+ENGINE=InnoDB;
275
+
276
+CREATE TABLE QRTZ_LOCKS (
277
+SCHED_NAME VARCHAR(60) NOT NULL,
278
+LOCK_NAME VARCHAR(40) NOT NULL,
279
+PRIMARY KEY (SCHED_NAME,LOCK_NAME))
280
+ENGINE=InnoDB;
281
+
282
+CREATE INDEX IDX_QRTZ_J_REQ_RECOVERY ON QRTZ_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY);
283
+CREATE INDEX IDX_QRTZ_J_GRP ON QRTZ_JOB_DETAILS(SCHED_NAME,JOB_GROUP);
284
+
285
+CREATE INDEX IDX_QRTZ_T_J ON QRTZ_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP);
286
+CREATE INDEX IDX_QRTZ_T_JG ON QRTZ_TRIGGERS(SCHED_NAME,JOB_GROUP);
287
+CREATE INDEX IDX_QRTZ_T_C ON QRTZ_TRIGGERS(SCHED_NAME,CALENDAR_NAME);
288
+CREATE INDEX IDX_QRTZ_T_G ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP);
289
+CREATE INDEX IDX_QRTZ_T_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE);
290
+CREATE INDEX IDX_QRTZ_T_N_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE);
291
+CREATE INDEX IDX_QRTZ_T_N_G_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE);
292
+CREATE INDEX IDX_QRTZ_T_NEXT_FIRE_TIME ON QRTZ_TRIGGERS(SCHED_NAME,NEXT_FIRE_TIME);
293
+CREATE INDEX IDX_QRTZ_T_NFT_ST ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME);
294
+CREATE INDEX IDX_QRTZ_T_NFT_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME);
295
+CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE);
296
+CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE);
297
+
298
+CREATE INDEX IDX_QRTZ_FT_TRIG_INST_NAME ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME);
299
+CREATE INDEX IDX_QRTZ_FT_INST_JOB_REQ_RCVRY ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY);
300
+CREATE INDEX IDX_QRTZ_FT_J_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP);
301
+CREATE INDEX IDX_QRTZ_FT_JG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP);
302
+CREATE INDEX IDX_QRTZ_FT_T_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
303
+CREATE INDEX IDX_QRTZ_FT_TG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP);
304
+
305
+commit; 
306
+
307
+```
308
+
309
+# appsettings.json
310
+
311
+# 确保一切正常
312
+
313
+mysql, redis, teche, techeusr, quartznet, kaiguanapplication
314
+
315
+# 局域网网站跑起来
316
+
317
+```
318
+dotnet.exe DD.Local.Web.dll
319
+
320
+INSERT INTO kaiguanapplication(NAME, DelFlag) VALUES('照明',0)
321
+```
322
+
323
+# 云端关系数据库添加项目数据库
324
+
325
+在持久化层
326
+- appsettings.json
327
+- GlobalSettings
328
+- DesignTimeDbContextFactoryBase
329
+- dotnet ef datbase update -c ...
330
+
331
+# 云端源代码Web层
332
+
333
+- appsettings.json
334
+- GlobalSettings.json
335
+- Program.cs
336
+
337
+# 云端权限管理后台添加集团和项目
338
+
339
+- 管理员登录:13800000000 DrrnFwd2018
340
+- 添加集团:group
341
+- 添加项目:project
342
+- 添加用户:ddaccount
343
+
344
+# 云端时序数据库
345
+
346
+- 检查状态:systemctl status taosd
347
+- 启动服务:systemctl start taosd
348
+- 修改配置文件:cd /etc/taos/   vim taos.cfg
349
+- 客户端连接TDengine: ./taos.exe -h 47.102.145.164
350
+- 创建数据库:create database reallq_realnuode_5_7;
351
+- 展示所有数据库:show databases;
352
+- 使用某个数据库:use reallq_realnuode_5_7;
353
+
354
+# 局域网网站启用云端
355
+
356
+- 禁用一些背景线程,比如RealDataToCloud
357
+- 超级表
358
+```
359
+- superreal
360
+- superrealtj
361
+- superwarning
362
+- superwarningtj
363
+- superdl
364
+```
365
+- 子表
366
+```
367
+- real_187ed5314e0c;
368
+- realtj_187ed5314e0c_h; realtj_187ed5314e0c_d; realtj_187ed5314e0c_n;realtj_187ed5314e0c_y;
369
+- warning_187ed5314e0c;
370
+- warningtj_187ed5314e0c_h; warningtj_187ed5314e0c_d; warningtj_187ed5314e0c_n;warningtj_187ed5314e0c_y;
371
+- dl_187ed5314e0c
372
+```
373
+- 云端同步

+ 1
- 0
实践/安装/智能照明实验环境搭建.md ファイルの表示

@@ -255,6 +255,7 @@ commit;
255 255
 ```
256 256
 INSERT INTO kaiguanapplication(NAME, DelFlag) VALUES('照明',0)
257 257
 ```
258
+- 初始配置:pad.snd02.com:8080/data/carry
258 259
 - 确保模块的服务器指向已经是:`192.168.8.131:8080/ebx-bishop/data/carry`
259 260
 - 查看服务器缓存数据库是否有相关数据
260 261
 - 登录:打开网站192.168.8.131:8080,输入用户名TecheFwd2018,点击"登录"按钮

+ 52
- 0
实践/安装/智能照明局域网连接云端.md ファイルの表示

@@ -0,0 +1,52 @@
1
+- 完成TDengine的连接
2
+- 在`DD.Electricity.Cloud.PrPersistence`项目中生成数据库
3
+
4
+```
5
+- appsettings.json中配置连接字符串
6
+- GlobalSettings.cs 把appsettings.json中的连接key放这里
7
+- DesignTimeDbContextFactoryBase中Create方法中的配置
8
+- dotnet ef database update -c ProjectDbContext
9
+```
10
+
11
+- 反向工程到局域网项目
12
+
13
+```
14
+- 局域网增加类库:TaiHe.Electricity.Cloud
15
+
16
+  <ItemGroup>
17
+    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.2.4" />
18
+    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.4" />
19
+    <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="2.2.4" />
20
+    <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="2.2.0" />
21
+    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.2.0" />
22
+    <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.2.0" />
23
+    <PackageReference Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.2" />
24
+  </ItemGroup>
25
+
26
+- dotnet ef dbcontext scaffold "server=47.103.61.198;port=3306;database=dingding_zhanting;user=root;password=TecheDing2019;SslMode=none" Pomelo.EntityFrameworkCore.MySql --schema database=dingding_zhanting -c CloudContext -o Cloud
27
+- 网站项目引用类库:TaiHe.Electricity.Cloud,发现类库的版本高了,类库需要降低版本。不仅仅是组件版本问题。以下可以:
28
+
29
+  <PropertyGroup>
30
+    <TargetFramework>netcoreapp2.0</TargetFramework>
31
+  </PropertyGroup>
32
+
33
+  <ItemGroup>
34
+    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.0.3" />
35
+    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.0.3" />
36
+    <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.0.0.1" />
37
+    <PackageReference Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.0" />
38
+  </ItemGroup>
39
+- appsettings.json配置连接字符串
40
+- Startup.cs配置上下文
41
+
42
+```
43
+
44
+- DD.Electricity.Cloud创建集团和项目
45
+
46
+```
47
+groupid:
48
+projectid:
49
+connkey:dingding_zhanting
50
+```
51
+
52
+- 局域网appsettings.json配置

読み込み中…
キャンセル
保存