你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32G031无线温湿度仪开源项目 -8,项目成果及全部资料下载

[复制链接]
STMCU小助手 发布时间:2021-11-13 23:00
抗击疫情取得阶段性胜利,PCB板也做好了,今天就把这个项目贴出来吧。
# y& q2 m) o1 Q# r4 h* s: J, f8 z- r# u  q# y) d
整体概述
+ z" d) E- u% k8 j+ w首先看看整体的,我们做了一个1+3的温湿度采集器,一个主模块(Zigbee的Coordinator)接在电脑上,另外3个独立的板子,采集了温湿度数据上报到主模块。7 J. F5 H3 G8 t  S7 C
9 b/ H" X$ g  O& G! \2 q
20200225172534104.jpg

7 Z# s0 O3 n4 f1 D1 b0 j- ?* O2 U8 p& }) F, s( O9 l! N6 w
20200225172633518.jpg

3 q% y9 L0 @% Q' M# j2 _, Z8 P! c
" A7 l3 a: Z3 P( H- f5 j8 U1 k$ g# L
20200225172718433.jpg
+ n) k- N3 W1 z& _" i2 C
0 }: n6 w1 \) j9 `4 S, I( f* W
单片机板子上有一个拨码开关,其中1,2是有用的,组合可以设置成4种模式:5 o5 \" Q  {$ L) N
1-OFF,2-OFF:将DRF1609H设置成Router,等待Modbus指令上报数据
4 `8 e1 I% W8 F' R% ~+ P) u1-ON,2-OFF:将将DRF1609H设置成End Device,等待Modbus指令上报数据
: B  `, x. r: E" x/ ~& b' @  z1-ON,2-OFF:将将DRF1609H设置成End Device,主动上报数据9 |& b2 ]$ s. Q. q! L( k- r% v, F& y
1-ON,2-ON:将将DRF1609H设置成End Device,主动上报数据,低功耗模式
0 Z6 V) U- ]1 i- V( G* v9 W7 N2 l
. J4 _3 J( i, O1 I) TModbus上报数据:
, u; r1 e1 e+ o& D5 |5 K- z( F单片机板子上已经内置了Modbus协议,2条指令,分别是写地址、读数据。
. U4 U5 q5 v- X8 z
2 H0 [+ a* B3 q6 }1,写地址指令:
% y) L& Z' G2 C* y' rFE:从机地址(0xFE为万能地址,对所有的板子有效)
3 C8 \+ K5 u7 m0 l06:写指令码
5 h( B2 s& s; L- p& N" p00 01:写数据的地址(本项目中,只有写从机地址这一个功能,只有0x0001有效)
0 y* c5 {7 W4 o+ ^00 01:写入的从机地址2 p2 C" k# u) s
0D C5:CRC-16校验码
' V- E5 g6 ~! u0 ]  ~( R) X( X' M$ P9 R
下面是从机1-10的写地址指令,可以直接取用。4 r6 u) m- _% {( p/ X6 Z, i
  1. FE 06 00 01 00 01 0D C5
    9 C2 W% `, g9 ^& O! E% y' P) B
  2. FE 06 00 01 00 02 4D C4
    7 K4 x0 n# ~4 o. p! ~0 g# P2 @
  3. FE 06 00 01 00 03 8C 04
    , }/ r" o/ V' r. c. m- R
  4. FE 06 00 01 00 04 CD C6
    2 O: F( M( b' v4 f( `, S% A
  5. FE 06 00 01 00 05 0C 068 v$ K5 x( N! S6 ]4 n- u" ?
  6. FE 06 00 01 00 06 4C 07
    0 A( n  g% T" H  ]8 t- O9 r
  7. FE 06 00 01 00 07 8D C7
    3 E# f. K0 @' k. t! Z0 C' V
  8. FE 06 00 01 00 08 CD C31 J' y' R  w: o0 H3 X
  9. FE 06 00 01 00 09 0C 03, d7 V& T  f( P  ^* v: @
  10. FE 06 00 01 00 0A 4C 02
复制代码
5 L* |) I9 u( L+ V# p9 X
写地址是通过主模块(串口调试助手),无线对单片机板子修改:
& j) ~' e0 s; ]9 b" R8 T- d- Y: `
20200225174120444.jpg

% ^' n* w: N& w2 U: @/ \- F5 x% H; v% l9 I4 S1 ]2 V* d
2,读数据指令:
2 n3 `' R! s4 s读数据可以使用标准的Modbus软件,如ModbusPoll,设置如下所示:
) w4 N$ r) v: n7 F
6 T3 G& x) n  e+ W
20200225174437942.jpg
' s0 o! v5 Z9 o& Q

3 k" f- A1 Y) ]9 R: i* G
20200225174451209.jpg

0 h* S$ G2 c* L, Z
( V& d3 x4 K! p3 a3 p2 @0 o  o3个板子一起读数据的截图:
& h% n  E$ x6 e. Q, I; \' T
0 Q  G2 Z$ ^" J  F
20200225174631651.jpg

3 X3 s# D) @; S" |$ ]& U! g1 N& V
+ c9 l; c# J* _- g7 ^低功耗上报数据:
5 E6 d- T+ @4 r  I) T% b# V在模式拨码开关设置成:1-ON,2-ON,单片机首先给DRF1609H模块设置成End Device,然后启动低功耗模式,低功耗模式下,10秒上报一次数据,2个5号电池,可以使用一年。
, E" k! q4 [* g$ g) R
7 c# {- D3 e+ w$ I0 {, T$ l. L
20200225175144437.jpg

( s- X& p- E6 I6 i% A% C
) O2 Z$ j, z* t, e$ ]! |7 I3 m
20200225175202691.jpg

# V2 K$ a* V0 W- [# {3 I- c2 l% z: d. I! P+ U4 j
测试Zigbee模块:
- C! B- E# g; {这个项目的通讯采用的是Zigbee模块,主要考虑以下几点:, h2 L  U$ ~) \. y8 V& A; e
1,Zigbee不依赖于外部网络或设备,如WIFI或GPRS,不需要额外增加东西,同时安装也比较简单,至少不需要TCP/IP等网络知识;* Z- H1 F. s. I2 B+ M& {0 @( ?- ^0 S* @) @
2,相对于433M的模块,Zigbee通讯要快很多,如果采集的点比较多,这个优势就很明显了,昨天看一个资料,说LoRa,如果要容纳500点上报数据,则要求每个点至少间隔1小时上报一次,每次最多10个字节,而在我们这个项目中,如果是500个点,每个点的上报间隔只要100秒(即每个点预留200MS的时隙即可),每次10个字节。, K* n  }) y/ u7 r9 j
3,Zigbee的自动路由,在工业现场,有些采集点可能放在锅炉底下、铁柜子里面,等等,由于Zigbee的自动路由,可以在旁边再放一个Router模块,这样,数据就可以自动路由出来,这也是Zigbee的优势之一。1 M+ A& L# ?: u# Z) J' }

1 L9 V! d& r3 A  u! g6 t厂家配套的软件,可以读取Zigbee的网络拓扑,还是很方便的:
4 F& u( q' {5 h7 y
1 \$ h# X: J- k6 E2 l
2020022518040649.jpg
. j0 y9 F0 j: N3 H" c

- J0 g" |& l4 P# ^
20200225180416122.jpg
4 s: o! i( m5 `- l* ?: l1 L4 f: e

& G5 H% Z" n2 @1 T5 o& @* b9 @
3 C) h+ H* E  L$ J! g' O
; _2 c! s. g4 C9 ^# C: t4 e" ~
收藏 评论0 发布时间:2021-11-13 23:00

举报

0个回答

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版