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

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

[复制链接]
STMCU小助手 发布时间:2021-11-13 23:00
抗击疫情取得阶段性胜利,PCB板也做好了,今天就把这个项目贴出来吧。
+ s( l8 n# l( _1 Z% x8 T" r# c. c' [+ z% v3 _5 w* r: m
整体概述, ^% |7 E  l9 p! A
首先看看整体的,我们做了一个1+3的温湿度采集器,一个主模块(Zigbee的Coordinator)接在电脑上,另外3个独立的板子,采集了温湿度数据上报到主模块。
2 G6 G9 B% c6 i1 N; K  S" E/ v) n; X1 k8 T$ G% N0 L, Q9 w
20200225172534104.jpg
. B6 y% Q$ c1 ]- e

- \1 t6 K2 V5 \
20200225172633518.jpg

! q( v; m! A& |0 e0 ]' C
" Y1 z. {8 e3 s
20200225172718433.jpg

" Z& R5 M: A7 z$ L8 C, }2 {( k- e0 B  d$ j& d+ c& A
单片机板子上有一个拨码开关,其中1,2是有用的,组合可以设置成4种模式:" R& H: X4 u3 J' @
1-OFF,2-OFF:将DRF1609H设置成Router,等待Modbus指令上报数据
: W4 ~" k* V& y  b" A1-ON,2-OFF:将将DRF1609H设置成End Device,等待Modbus指令上报数据
2 h& v+ V& b! T6 ~1-ON,2-OFF:将将DRF1609H设置成End Device,主动上报数据# A& c! d! L+ L* U+ Q( `
1-ON,2-ON:将将DRF1609H设置成End Device,主动上报数据,低功耗模式
/ @1 a0 b6 }* s- A8 ]
# e6 A/ M2 q5 [3 t1 A9 }' S  ?/ rModbus上报数据:
$ Z( X% @+ t* t3 r9 K单片机板子上已经内置了Modbus协议,2条指令,分别是写地址、读数据。+ e- [2 v" s6 i5 J
% D" Z: N# w' G- k
1,写地址指令:, R3 Y! v( R' L! y  q& x
FE:从机地址(0xFE为万能地址,对所有的板子有效)
2 l( s& S5 C1 I06:写指令码
7 m8 Z6 w& B# r3 n6 V+ y00 01:写数据的地址(本项目中,只有写从机地址这一个功能,只有0x0001有效): g, s: H2 E+ @) M9 g9 p
00 01:写入的从机地址1 Y; S( |% H: I3 }  @2 x
0D C5:CRC-16校验码* M9 L" m8 q  g" l1 B! U8 P/ @2 E

5 O. i* g; A2 e+ I% z- c( l下面是从机1-10的写地址指令,可以直接取用。
8 [% I, C1 V) [# Q- ^; n5 V
  1. FE 06 00 01 00 01 0D C5! t+ z% [! M0 X- }
  2. FE 06 00 01 00 02 4D C4
    : ~6 q, V& t& T9 v6 k
  3. FE 06 00 01 00 03 8C 04; C3 U- n" w" ?. X# C
  4. FE 06 00 01 00 04 CD C6
    $ U: G* v3 s' t, n* E- a0 D
  5. FE 06 00 01 00 05 0C 06
    : k* b# [) t, t  {2 v0 i% W& R# D
  6. FE 06 00 01 00 06 4C 079 Q/ o0 q3 ~4 L" I1 C  K
  7. FE 06 00 01 00 07 8D C7
    , Q0 e. a4 u6 ]& @5 G) c6 Y! R1 B
  8. FE 06 00 01 00 08 CD C3( c3 H0 N& A2 \/ F/ G7 [
  9. FE 06 00 01 00 09 0C 03
    8 \2 R: S$ Y6 q6 Z$ [% j* s% z& x
  10. FE 06 00 01 00 0A 4C 02
复制代码
- ?/ Q3 o$ ?& }' g
写地址是通过主模块(串口调试助手),无线对单片机板子修改:
) q- {5 g3 Q+ I7 q8 Z
20200225174120444.jpg

- A0 h* a) O- y5 V( S6 N% D! X) J; |+ l4 x' F
2,读数据指令:
1 q6 k: \8 b, m% b2 z读数据可以使用标准的Modbus软件,如ModbusPoll,设置如下所示:) b% J- g* |# U0 C: [/ Q* w

1 [. O4 |! ?+ i+ n# k( \0 G% o( n4 ?7 P2 r/ y
20200225174437942.jpg
' D7 j& z/ }0 N/ U& R( ?

: A# q% s* t! g% H. v2 d, K& f
20200225174451209.jpg
# f1 [! o5 O3 G- Q& |$ W3 s' X

: P7 X' Q/ T, s) m- i3个板子一起读数据的截图:; {6 v4 T. A; @3 K$ l9 d2 k
' m8 f1 k5 @5 @% t; q  @! A
20200225174631651.jpg
# j2 C- D% ]$ J# a: M' T

3 u2 @0 e( D/ b, Z; r+ R$ w, \低功耗上报数据:
- f, R- n/ h2 z0 P9 c& _& G在模式拨码开关设置成:1-ON,2-ON,单片机首先给DRF1609H模块设置成End Device,然后启动低功耗模式,低功耗模式下,10秒上报一次数据,2个5号电池,可以使用一年。
3 V  k$ y& g9 f: w/ C( u5 [: P5 p# ?5 w9 h$ b4 O3 S( K& J
20200225175144437.jpg
7 y5 l2 B, X- D$ }, m

$ v/ R' u% @9 y  i- o
20200225175202691.jpg
: d: w& D0 H4 F
) i& S# ?  q5 }6 A& [9 z! J
测试Zigbee模块:# i  v, ]* N6 d
这个项目的通讯采用的是Zigbee模块,主要考虑以下几点:
! _) E( e5 X" v* Y1,Zigbee不依赖于外部网络或设备,如WIFI或GPRS,不需要额外增加东西,同时安装也比较简单,至少不需要TCP/IP等网络知识;$ I2 l" N$ o; |2 U: T
2,相对于433M的模块,Zigbee通讯要快很多,如果采集的点比较多,这个优势就很明显了,昨天看一个资料,说LoRa,如果要容纳500点上报数据,则要求每个点至少间隔1小时上报一次,每次最多10个字节,而在我们这个项目中,如果是500个点,每个点的上报间隔只要100秒(即每个点预留200MS的时隙即可),每次10个字节。" v4 i! Y8 a+ P+ r. |
3,Zigbee的自动路由,在工业现场,有些采集点可能放在锅炉底下、铁柜子里面,等等,由于Zigbee的自动路由,可以在旁边再放一个Router模块,这样,数据就可以自动路由出来,这也是Zigbee的优势之一。
$ J0 b1 ?- u, t" i+ n0 K2 g) _+ r6 `3 v* z6 B8 F* C  V
厂家配套的软件,可以读取Zigbee的网络拓扑,还是很方便的:9 Z; C) r! C1 c. m/ N3 S5 W* T
% K0 ~# D1 U$ O0 |% K% k2 }
2020022518040649.jpg
* ~( m# b( N" b! e3 q4 Q; u
  m9 ~0 ]3 Z0 i" W7 ^  b1 g
20200225180416122.jpg
4 l1 R2 ^: f; d

) f3 C: I$ o- r& i& z( m- `. g+ \% l
; f; O! Z* x+ i3 L8 A! d# B) M- z
收藏 评论0 发布时间:2021-11-13 23:00

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版