最近我家有这么一个需求,请大家帮我 brainstorm 一下。
假设有一条 1000m 长并且有弯曲的巷道,在地下负 500 米处。巷道内每隔 10 米有一盏灯,共 100 盏灯。灯之间都是并联,受同一开关控制。但是由于灯泡可能老化坏掉,因此其中某几个灯泡不一定会亮,这种情况非常危险。
为了保证工人安全,在灯亮起后,需要在一分钟之内获得每个灯泡的工作情况,如果有任何灯泡坏掉就不能继续作业。
我的设想是,在每盏灯上加装一个电流传感器,采集电流数据判断。因为灯泡坏掉就是灯丝熔断,不可能短路,因此电流为 0 时就可以判定该灯泡坏掉了。
问题是,在一个 1000m 长的巷道内,如何采集 100 个传感器的信号。
最笨的方法是在巷道的一端架设一台大交换机,然后接 100 根网线到每个灯上,用树莓派进行采集。但是这个方案无法扩展,而且布线困难。
我能想到的办法是在巷道内布置一些 AP,实现 Wifi 覆盖,然后用支持 MQTT 的智能灯泡连接。在服务端通过 MQTT 查询每个灯泡的工作情况。
可以使用 Zigbee 来控制灯泡,不过不知道是否支持 100 个节点的链
请问大家还有更好的办法么?谢谢!
1
whileFalse 2020-07-09 13:56:39 +08:00
LZ 这是要干大事儿啊。
|
2
rabbbit 2020-07-09 13:57:14 +08:00
矿井?
看看矿下的人员定位用的啥设备,可能已经有 wifi 之类的了. 布线也没啥的, 矿下摄像头也一样都是用的线. |
3
lsylsy2 2020-07-09 13:59:41 +08:00 5
智能家居不适合工业环境,你应该去看看单片机、RS485 那一套。
|
4
kruskal 2020-07-09 14:00:05 +08:00 1
家里有矿?
|
5
vmebeh 2020-07-09 14:00:48 +08:00 via iPhone
上防爆灯
专业的让专业的来 |
6
gamexg 2020-07-09 14:01:17 +08:00 via Android
记得路灯上是有现成的方案,
用的电力通信 |
7
woodensail 2020-07-09 14:02:32 +08:00
额,感觉最省成本的方式是从单片机拖一千根线出去,然后一根一根扫就是。担任 1 千根确实多了点。
那就上扫描码,35*35,一共 70 根线就够。 还是有点多,那就上 6 转 64 译码器。一共两个,那 12 个控制针脚就够了。 |
8
lsylsy2 2020-07-09 14:06:16 +08:00
光敏传感器连接单片机发送数据,或者暴力一些直接接继电器,当亮度不够时通电点亮警告灯,一个点应该 10RMB 以内可以解决。可靠性不会比本来也只设计家用级别的树莓派差,还可以每个灯配两个传感器
|
9
lsylsy2 2020-07-09 14:07:32 +08:00 1
不要小看家用路由器之类产品上面的“仅供室内使用”标签,出了故障出了事故这就是你监管不力不符合标准的罪证
|
10
woodensail 2020-07-09 14:13:47 +08:00
首先 12 个针脚分两 a/b 两组组,每组接一个 6/64 译码器。此时你得到 a1-a64,b1-b64 共 128 根线,你可以控制其中任何一个为高电平。
然后 a1 线串上 1-64,a2 线串上 65-128 依次内托。b1 线串上 64n+1 (也就是 1,65,129...),b2 串 64n+2 。这些线一共可以接 4096 个监控原件。 最后你还需要一根回,把所有灯泡并联上去,大功告成。 工作的时候,就是每次先 a1-a64 扫描一遍,然后 b1-b64 扫描一遍。假设编号 500 的等坏了。那么你就会发现 a8,b53 两个信号有异常。 |
11
kop1989 2020-07-09 14:14:45 +08:00 2
如果脱离生产环境,只讨论理论可能的话。是不是可以通过总功率来判断?
假设 100 盏灯,每盏灯 10w 功率,那么正常功率消耗应该就是一个固定的值(不是 1000w,因为有线路损耗啥的)。 如果某一次测得总功率比额定功率变化超过了+-10w 的范围,那么必然是有一个或以上灯泡损坏(短路、开路都可以覆盖)。 |
12
gamexg 2020-07-09 14:14:57 +08:00 via Android
lora 也是一个选择,通信距离是千米级别
|
13
woodensail 2020-07-09 14:17:37 +08:00
不对,我突然发现,没必要分 ab 两组,直接把译码器拉出来的线分两组就行。32*32,1024 个也够你用了。
这样 6 个控制针脚加 1 个用来接回线的输入针脚就够 |
14
Xusually 2020-07-09 14:20:43 +08:00 1
这些灯泡专用一路电,电力线通信( PLC ),应该是有现成的方案
|
15
Exin 2020-07-09 14:23:40 +08:00
如果线路是专门为所有灯泡供电的话,在线路上测总电流就行了吧
|
16
takemeaway 2020-07-09 14:25:03 +08:00
这个时候,激光通信的作用就来了。
每个灯泡上集成激光通信模块,互相连接,中间有故障灯马上可以知道。 |
17
b7ur 2020-07-09 14:26:08 +08:00
那这么复杂,如果电泡坏了,就由单片机发出坏的信号。100 个灯泡由单片机检测一遍,然后发回正作状态就可以了,要么布线,要么无线( lora 不一定能在矿下工作,lora 需要基站的)
|
18
interim 2020-07-09 14:29:07 +08:00
可以尝试了解 zigbee 组网,只要不是节点连续掉了好几个,都能自组网回来,完全可以容纳 100 个,就是不知道你这个巷道弯曲程度对信号的影响,还是需要实际测试下。
|
19
lx0758 2020-07-09 15:07:20 +08:00
要不试试底层一点的, IIC 协议
|
20
PopRain 2020-07-09 15:08:17 +08:00
应该有工业总线去解决吧,没有听说过谁给每个灯泡都拉一根网线。。。。。或者,这个速率没有要求,用之前的同轴电缆总线网络结构也可以,一根同轴电缆就可以了
|
21
bagheer 2020-07-09 15:15:59 +08:00 1
这还不简单,改成串联的
|
23
VictorJing94 2020-07-09 15:24:20 +08:00
一根线就好了....wifi 不现实
|
24
windyland 2020-07-09 15:39:24 +08:00 via Android 2
有个简单的办法,就是载波,在其中一条电源线(火线)的端口处放一台载波发生器,然后在回路(零线)接口处放一个接收装置,载波沿着线传播,由于路径的不同,能收到 100 个时序信号,接着就是定时发射信号,然后和历史数据比对,断路的损坏灯泡会让载波少个信号,如果这样的设备做不出来,可以直接加个瞬变电压,灯泡结构简单不会被瞬时电压损坏(注意去除市电的杂波干扰),但是接收设备却能很简单的接受到 100 个瞬变电压信号,做好滤波,然后把 100 个灯泡分组,这样帮助工人及时确定损坏灯泡的位置,但是也要考虑到各种接触不良导致的异常信号,但是这就是后期优化的水磨功夫了,我打比赛的作品,原理和你这个有些类似,只是我监测的是裂隙。
才疏学浅,如有不足,见谅! |
25
wty 2020-07-09 15:42:12 +08:00 via Android
TDR (开玩笑的)
用 485 总线? 485 倒是一次挂不了这么多设备,但是用同样原理的电路,降低速率,用更强驱动能力应该还是能搞定的。反正也没限制功耗,力大砖飞就完了🤣不过缺陷是不能有设备短路的情况,短路的话全部的通信都会挂掉。 |
26
lsylsy2 2020-07-09 15:48:22 +08:00
@wty 用中继器做分段的话设备数量就可以解决
以及目的是“安全监测”的话,设备短路也是一种需要检测出来的损坏,只要能排查出是哪一段损坏,比较快的修复就可以吧 |
27
wty 2020-07-09 15:49:59 +08:00 via Android
刷新了一下发现 24 楼的原理挺像 Tdr 的,感觉灯泡阻抗太低了,信号源难搞
|
28
x86 2020-07-09 15:54:18 +08:00
现在矿场都招程序员了嘛
|
29
locoz 2020-07-09 15:56:31 +08:00
|
30
Ediacaran 2020-07-09 16:07:15 +08:00 via iPhone
Zigb 或者蓝牙 mesh
|
31
mlhorizon 2020-07-09 16:09:38 +08:00
检测灯的损坏,用电流传感器没问题。
组网的话,载波通讯应该是 OK 的。 无线的话,ZigBee 肯定能行,BLE MESH 方案也可以试试。 |
32
maweihao999 2020-07-09 16:26:45 +08:00 via Android
低压电力载波
|
33
David1119 2020-07-09 16:29:07 +08:00
modbus+带 modbus 的电流互感器
|
34
PineappleBeers 2020-07-09 16:33:54 +08:00
esp8266 之类的单片机做 mesh 即可。
|
35
thtznet 2020-07-09 16:55:52 +08:00
灯泡冗余,蓝牙 MESH 或者 WiFi MESH 都可以。
|
36
xd314697475 2020-07-09 17:22:01 +08:00 1
矿井吗?之前公司用的是华中科合作的定制传感器
给每个灯旁边安装一个光敏电阻来短路报警线路,如果有灯不亮则线路联通,警报灯亮? |
37
BreadBig 2020-07-09 17:26:50 +08:00
第一想法是,这个是数学题目吗,并联电路的总电流等于各个分支的电流之和,每个灯泡的工作电流稳定的情况下,监测总电流的小于目标电流的最低阈值,是不是就可以知道有灯泡没工作了?
|
38
SteveLee 2020-07-09 17:31:52 +08:00 via iPhone
lora mesh 组网
|
39
optional 2020-07-09 17:43:45 +08:00
我觉得最简单的是买 100 个灯泡啊,如果一个灯泡坏掉的概率是 1/100 的话,那么 2 个一起坏掉的概率是 1/10000,再优化下排列的方式,让灯泡坏掉的情况变得不是那么严重,这样人工巡检一天一次就能解决问题了。
|
40
optional 2020-07-09 17:44:00 +08:00
再买 100,用一份冗余
|
41
cpstar 2020-07-09 17:54:36 +08:00 1
就只有一个灯管的监控?将来不做瓦斯浓度的监控么?
那如果不想折腾,弄一大堆什么职能 LED 灯泡,然后一大堆 zigbee 网关,一层一层堆叠呗。 如果想折腾,无线的方案就不要考虑了,纯耗散精力。前述的一千根线是个方案,但是没必要真的一千根,串联+并联的方式,再上级联,简化布线,也许几个 arduino 就够了 |
42
zdphpn 2020-07-09 18:13:08 +08:00 via Android
第一想法,每个灯的旁边都装一个检测灯是否亮着的从机,所有的模块通过 485(可以用中继增加节点个数)连到主机。
从机,检测灯亮有很多方法,光感,电流,用过简单的方法串两个二极管,测二极管上有没有压降。 主机,可以开发一个主机或者直接用 PC,轮寻从机获得灯的状态即可。 |
43
zarte 2020-07-09 18:40:38 +08:00 1
铺个轨道,放个光感小车检测的时候小车来回跑一圈就知道了。要不然每个灯旁加光感检测。
|
44
opengps 2020-07-09 18:52:46 +08:00 via Android
楼主把问题想复杂了,来参考下我这里汽车定位器平台的解决方案:每个节点(对我是车,对你是灯)内置一个可远程控制的流量卡即可
|
45
opengps 2020-07-09 18:53:56 +08:00 via Android
地下,,,需要追加蘑菇头传输信号
|
46
lty1993 2020-07-09 19:42:11 +08:00
LoRaWAN
|
47
dapang1221 2020-07-09 19:47:07 +08:00 1
这个,这个还真有现成方案,参考下消防报警器吧,每个手报都有一个独立的编号,实际上就是组网
|
48
leavic 2020-07-09 23:13:27 +08:00
这是真矿主啊
|
49
leavic 2020-07-09 23:16:35 +08:00
话说,这问题最简单的解法,还真就是改成串联 LED,一个断了直接就没电流,你在井外都能发现。
不要扯成本,矿主没资格扯成本。 而且,串联布线这个成本也太低了,原来的 线直接放弃不用都不是啥问题。 |
50
gainsurier 2020-07-09 23:17:15 +08:00 via iPhone
通讯管理机解决啊
|
51
leavic 2020-07-09 23:23:01 +08:00
当然,本着严谨的态度,本公司从事电力载波行业多内,也算业内翘楚级别,你这个需求用电力载波解决其实挺简单的。
电流传感器直接输出 AD 数据也好,还是输出串口数据也好,直接接入载波芯片数字接口端就可以了,载波端直接接入电线,只要你这些电线是通的,我们一般就没啥问题,100 个节点组网是小意思。 电流传感器其实不一定合适,改成 i2c 输出的光强度传感器可能更合适,毕竟间隔 10 米了,真灭了光强度变化还是挺大的,而且不担心电流传感器本身对线路稳定性的影响。 |
53
leavic 2020-07-09 23:30:58 +08:00
载波方案的话一颗载波芯片+PA+外围物料+PCB 能控制在 20 以内。+一个光强度传感器大概 4~5 块。
无需额外布线,但载波有个问题是,你没有低压直流电供载波芯片工作,不过上面所有的方案其实都有这个问题,所以额外的 AC/DC 我就不考虑了,非要算的话,一个 12V 电源大概 20 块。 最终一个节点 50 块成本能搞定。 只要你找到人帮你做这个项目,毕竟量产 100 台。。。不够塞牙缝。 |
54
leavic 2020-07-09 23:32:26 +08:00 1
原谅我废话一句,我确实挺感谢楼主你这个帖子的,让我深刻的认识到了载波芯片不能直接利用 220V/380V 工作是个多严重的问题,这简直是给电源厂家打工。
|
55
niubee1 2020-07-09 23:34:41 +08:00
可以用 lora,一个 lora 模块几十的成本,
|
56
tolerance 2020-07-09 23:55:28 +08:00
电力猫合适么?感觉电力线路比较单一,每隔 200 米一个电力猫子猫,电力猫信号应该够用
|
57
sailtao 2020-07-10 00:19:46 +08:00
在封闭且有阻碍物的环境无线信号传递是利用了矿洞内的反射,wifi 等常用无线设备效果不行,大部分使用 lora,而且矿洞内使用的设备在设计、用料、摆放位置都非常讲究,需要考虑的因素非常多。既然是为了安全,还是应该找专业的公司。
|
58
starqoq 2020-07-10 01:58:05 +08:00
用 CAN 总线穿起来。每个灯泡下面加一个单片机和检流电阻。但是要额外布线 2 根。
i2c 是板内总线。大力用黑科技能跑 50m,1km 太夸张了。 |
59
jfcai 2020-07-10 07:20:44 +08:00 via Android
学到好多知识,如果是我应该会选载波方案。
|
60
594duck 2020-07-10 07:33:16 +08:00 via iPhone
我也很感谢楼主的帖子。让我可以简单的拉黑一堆脑残,省的日后相见。
还有人说串联的,典型的初中物理不及格 |
62
shaopu 2020-07-10 08:18:39 +08:00
用 esp32 的 ESP-MESH,自组网~
https://docs.espressif.com/projects/esp-idf/en/stable/api-guides/mesh.html 成本也不高~ |
63
lloovve 2020-07-10 08:27:40 +08:00 via iPhone
上电延时电路,然后总线上安装电流检测,这样就可以判断出哪个坏了,不过最好的方法就是 485 通讯
|
64
David1119 2020-07-10 08:33:59 +08:00
一群没有现场经验的在这瞎吹,普通等级走 485 就够了,等级高的上本安模块
|
65
billwang 2020-07-10 08:38:59 +08:00
可以考虑特殊的电缆,就是电缆内部穿着光纤,目前电缆井和你这个异曲同工,都开始 IOT 化了。
|
66
fengtons 2020-07-10 08:49:40 +08:00 via Android
RS485 通讯距离 1KM 没问题
|
67
winglight2016 2020-07-10 08:56:23 +08:00
只看灯亮没亮根本不需要智能设备,我记得高中物理里有这种题目,只需要测试并联电路两头灯电流就好了,多一盏灯和少一盏都会导致电流变化。最多,你加个电流传感器并且自动帮你计算电流波动值,然后亮个警示灯就够了。
|
68
diyisoft 2020-07-10 09:10:31 +08:00
在井下搞这些必须,设备必须要带 MA 标志吧。虽然楼上有很多解决方法,但是真正到井下去用还是有路要走的。
走 mqtt 协议不错,如果要研发,到最后设备都要做认证的。 不然就是买现成的类似的系统,然后定制化一下。 |
69
memorybox 2020-07-10 09:11:46 +08:00 2
这个需求挺有意思的,
如果搞工程的话,1000 米的巷道,设备不动,我能想到的最简单的实际操作的办法: * 电流传感器引出到继电器,加个蜂鸣报警器,灯灭了长响几声,然后安排工人排班监控即可;制定规章制度,报警喇叭长响就暂停生产; 这个成本低,但是不自动化,要依靠规章制度和人员管理来实现; 要自动化的,不管是单片机、载波、电力线缆通信,都得要现成的厂家解决方案和成熟产品,因为井下是不能给你搞实验的,所以最靠谱的就是问有没有做井下矿灯监控的现成产品~~~这个我没接触过,期待有人推荐个成熟的厂商产品; ======================== 如果要搞研究,就复杂了,可以扩展为"如何方便的对井下数据采集" 这个问题; 我刚毕业是从事矿山机械设备维护的工作,下了不少矿井;就我的实际经验来看,技术选型首先要确定采用无线方案还是有线方案; 我更倾向于无线方案,有线方案的弊端非常明显,就我的实际经验看,在巷道里布线,时刻要面对如下问题: * 回采面不断推进,包括本安电源、照明设备、变压器等等都需要频繁移动位置,这中间拖着电源线缆就已经很麻烦了,如果再加通信线路就更累赘 * 工人维护线缆是个精细活,占用大量人工;而且去井下干过活的人都知道,井上 1 个小时能检查完的工作,井下一般要 3 个小时;如果有人在井下接过断掉的通讯线路就有体会了; * 理论上井下引入的所有的设备都要有本安认证,不管是个小小的传感器,还是电源、电缆;而且各种设备安全限制,所以在井上看来理所当然的事情在井下行不通; 刚毕业的时候能折腾,有个 idea,用本安无线 AP 覆盖巷道,把定位设备做在矿灯里,实现简单的通信、信号采集上传等等;后来做了一个原型: https://github.com/brain-zhang/icaplamp 后来发现功耗、精度、范围等等都不好达到要求,就作罢了; 后来 2014 年开始的时候,基于 Zigbee 的巷道通讯方案渐渐多了起来,我已经不再从事这个行业了,就没有深挖过;今天重新看到类似问题,又去研究了一下 Zigbee 的相关论文,我觉得这貌似是个井下组网的好办法; http://gb.oversea.cnki.net/KCMS/detail/detail.aspx?filename=DZJY201312040&dbcode=CJFD&dbname=CJFD2013 https://xueshu.baidu.com/usercenter/paper/show?paperid=e74861ebfdd52729b56bb0aab9380e9f&site=xueshu_se 搞研究的话,我倾向于 Zigbee 组网方案; |
70
nutting 2020-07-10 09:22:55 +08:00
检测总电流变化不知道能不能判断出来
|
71
nutting 2020-07-10 09:25:37 +08:00
那些 wifi,蓝牙什么最好不要搞,可靠性不行,特殊场合和环境也有限制。传感器可靠性也有问题,布线又不方便。上面说的每个灯加报警不错,坑道里应该很容易听见吧
|
72
rainman777 2020-07-10 09:42:09 +08:00
485
|
73
chole 2020-07-10 09:46:33 +08:00
最简单的物理解决方案选择串联所有灯。
|
74
OblivionStaff 2020-07-10 10:12:23 +08:00
串联的方案,如果有灯泡坏了,要排查并替换时,工作量太大了
|
76
bashbot 2020-07-10 10:27:26 +08:00
不要用无线方案,不要借用电力线。。
给几个方案参考: 1. 支持故障定位,采用 CAN 总线(或类似的多节点串行总线),需要两根数据线,每个灯下需要传感器和 CAN 解码器 2. 不支持故障定位,光敏传感器用一根线串联,另需一线做回路,只要回路不通(电阻高于设定值)就算有故障。 |
77
raptor 2020-07-10 10:33:43 +08:00
这个有专门的工业解决方案啊,不要尝试用业余手段处理,靠不住
|
78
sdushn 2020-07-10 10:39:54 +08:00
can 总线了解下?千万别用无线
|
80
leavic 2020-07-10 10:44:45 +08:00
@Siriusie 给东家打个广告:钜泉光电,提供宽窄带载波芯片、计量芯片、宽窄带 PA 、多合一电源芯片全套方案,未来还有无线方案。
|
82
kusys 2020-07-10 10:49:38 +08:00
走 lora,
当时兖矿有个需求,井下人员定位,我们就给他们做的 lora 方案 从设计到产品生产,都是我们做的 |
84
zxcslove 2020-07-10 10:58:39 +08:00
如果是灯丝灯泡,每个灯串一个继电器,所有继电器串成一条安全回路?
|
85
zxcslove 2020-07-10 11:02:05 +08:00
如果是检测光线,那就用光电隔离元件做类似的安全回路,收光部分用圆筒指向灯泡防止其他光干扰。
|
86
lsylsy2 2020-07-10 11:02:06 +08:00
|
87
Numberones 2020-07-10 11:24:47 +08:00
@windyland #24 很高级的方法,完善成为一个工程项目都能作为一个硕士课题了👍
|
89
killeder 2020-07-10 13:18:00 +08:00
uwb ?
|
91
CBS 2020-07-10 13:32:53 +08:00
盗墓笔记 2020
|
92
nielinjie 2020-07-10 13:53:53 +08:00
24 楼的方法不错,可以加个机器学习,通过回波自动判断具体哪个灯坏,把 AI 概念扯进去。
|
93
xuxuxu123 2020-07-10 13:55:05 +08:00
想说的答案,已经有伙伴提到了;就是 zigbee 无线组网,接光线传感器,然后只需要在其中一个灯泡设置接收端进行数据上穿就更好了,以后需要架设更长的也没问题
|
94
mosliu 2020-07-10 15:52:25 +08:00
zigbee 呗 拿个光敏电阻监测应该就行了 自由 mesh 组网。每个定时上报状态。
|
96
bagheer 2020-07-10 23:42:12 +08:00
@ciaoly 其实很容易计算啊,多少个灯泡,电压多少。这个其实很好算,根据灯泡吧,而且很多灯泡适用电压范围很宽,电压不够就是亮度低一点,大概估算就行了,一个可调节的稳压电源搞定。
我画了一个示意图 i.imgur [dot] com/kLvqHjZg.png |
98
prenwang 2020-07-11 09:07:59 +08:00
脑洞很大,但是基本都是瞎扯, 标准模式是安装应急灯, 对应急灯实现管理简单的多,
|
99
systemcall 2020-07-11 16:16:12 +08:00 via Android
有线:RS485 或者 CAN
无线:ZigBee 这种东西用不上以太网,WiFi 也用不上。需要的是低成本、高可靠性,同时设备多、距离长,而且窄带通信就够了 RS232 可以提高电压来加大距离,但好像没那么远,应该还是得 RS485,设备倒不算很贵。 i2c 看上去很好,因为只需要走 2 根信号线就可以连接所有的设备,每个设备分配不同的地址就行了。但是距离真的没那么远,印象中用 i2c 的通过电缆传输的只有显示器的 DDC 信息 其实感觉 irda 应该也可以,加大功率的话距离也比较远。不清楚 1 分钟能不能传输完 100 个灯的状态,记得这个东西很慢 感觉还是要隔一段时间每个能够用的灯的状态都上报一遍,出现故障再报告的话,如果控制器坏了有可能报不上去 采集这方面,直接检查有没有光也可以考虑一下,光敏电阻没多贵吧,加个 LED 就可以自检了 |
100
bbdlg 2020-07-12 05:02:16 +08:00
通过蓝牙网关,可以做跳转,成本还小。
|