“Sense HAT (B)”的版本间的差异
Waveshare-admin(讨论 | 贡献) |
|||
(未显示6个用户的53个中间版本) | |||
第1行: | 第1行: | ||
+ | <div class="wiki-pages blue-color"> | ||
+ | <div class="tabberlive newwsnav" id="wsnavbar"> | ||
+ | <ul class="tabbernav"> | ||
+ | <li class="nav-link">[[#myintro|说明]]</li> | ||
+ | <li class="nav-link">[[#myresources|资料]]</li> | ||
+ | <li class="nav-link">[[#myfaq|FAQ]]</li> | ||
+ | <li class="nav-link">[[#mysupport|售后]]</li> | ||
+ | </ul> | ||
+ | </div> | ||
<div class="tabber"> | <div class="tabber"> | ||
{{外围模块|colorscheme=blue | {{外围模块|colorscheme=blue | ||
|name = Sense HAT (B) | |name = Sense HAT (B) | ||
− | |img=[[File:Sense-HAT-B-1.jpg|360px |alt=Sense HAT (B)|link= | + | |img=[[File:Sense-HAT-B-1.jpg|360px |alt=Sense HAT (B)|link=https://{{SERVERNAME}}/shop/Sense-HAT-B.htm | Sense HAT (B)]] |
|category1=传感器 | |category1=传感器 | ||
|category2=树莓派 | |category2=树莓派 | ||
第11行: | 第20行: | ||
}} | }} | ||
− | <div class="tabbertab" title="说明"> | + | <div class="tabbertab" title="说明" id="myintro"> |
− | == | + | |
+ | <h1>说明</h1> | ||
+ | |||
+ | ==产品概述== | ||
我是专为树莓派设计的传感器扩展板,板载了陀螺仪、加速度计、磁力计、气压计和温湿度传感器等,I2C接口通信,支持外接更多传感器。 | 我是专为树莓派设计的传感器扩展板,板载了陀螺仪、加速度计、磁力计、气压计和温湿度传感器等,I2C接口通信,支持外接更多传感器。 | ||
如果你想把树莓派DIY成可以检测运动姿态、方位的机器人,或者想让树莓派采集周围环境的温湿度、大气压强等传感器数据,那就带上我吧。 | 如果你想把树莓派DIY成可以检测运动姿态、方位的机器人,或者想让树莓派采集周围环境的温湿度、大气压强等传感器数据,那就带上我吧。 | ||
− | == | + | ==产品特点== |
*板载Raspberry Pi 40pin GPIO接口,适用于Raspberry Pi系列主板 | *板载Raspberry Pi 40pin GPIO接口,适用于Raspberry Pi系列主板 | ||
*板载ICM20948(3轴加速度、3轴陀螺仪和3轴磁力计),可检测运动姿态、方位和磁场 | *板载ICM20948(3轴加速度、3轴陀螺仪和3轴磁力计),可检测运动姿态、方位和磁场 | ||
第26行: | 第38行: | ||
*提供完善的配套资料手册(Raspberry/STM32等示例程序) | *提供完善的配套资料手册(Raspberry/STM32等示例程序) | ||
− | == | + | ==产品参数== |
{|border=1; style="width:900px;" | {|border=1; style="width:900px;" | ||
|-style="background:#000088; color:white;" | |-style="background:#000088; color:white;" | ||
第72行: | 第84行: | ||
|} | |} | ||
− | == | + | ==产品大PK== |
{|border=1; style="width:900px;" | {|border=1; style="width:900px;" | ||
|-style="background:#00cc88; color:white;" | |-style="background:#00cc88; color:white;" | ||
第90行: | 第102行: | ||
|} | |} | ||
− | = | + | =树莓派使用指南= |
− | == | + | ==硬件连接== |
− | + | 与树莓派连接用到的引脚如右图所示:<br /> | |
− | + | [[File:Sense-HAT-B-pins.jpg|400px|与树莓派引脚连接图]] | |
− | [[File:Sense HAT | + | 实物硬件连接图:<br /> |
+ | '''接入树莓派Zero'''(可不加增高排座)<br />[[File:Sense-HAT-B-9.jpg|800px]]<br /> | ||
− | + | '''接入树莓派4'''(须加上增高排座)<br />[[File:Sense-HAT-B-7.jpg|800px]]<br /> | |
− | [[File:Sense | + | |
− | { | + | {{RPI_open_i2c}} |
− | + | ==安装库函数== | |
− | + | {{RPI_C_lib}} | |
− | + | ===python=== | |
− | + | <pre> | |
− | + | sudo apt update | |
− | + | sudo apt install python3-pip | |
− | + | sudo apt install python3-spidev | |
− | + | sudo apt install python3-smbus | |
− | + | </pre> | |
− | + | ||
− | + | ==下载例程== | |
− | |||
− | |||
sudo apt-get install p7zip-full | sudo apt-get install p7zip-full | ||
− | + | wget http://www.waveshare.net/w/upload/6/6c/Sense-HAT-B-Demo.7z | |
7z x Sense-HAT-B-Demo.7z -O./Sense-HAT-B-Demo | 7z x Sense-HAT-B-Demo.7z -O./Sense-HAT-B-Demo | ||
cd Sense-HAT-B-Demo | cd Sense-HAT-B-Demo | ||
+ | ==I2C设备地址== | ||
+ | |||
+ | ADS1015/SGM58031: AD转换例程(STM32 , BCM2835,WringPi 和Python四种例程)设备地址:0x48 | ||
+ | |||
+ | ICM-20948:9轴传感器例程(STM32 , BCM2835,WringPi 和Python四种例程)设备地址:0x68 | ||
+ | |||
+ | LPS22HB:气压传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x5C | ||
+ | |||
+ | SHTC3:温湿度传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x70 | ||
+ | |||
+ | TCS34725:颜色识别传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x29 | ||
− | + | <font color="#FF0000">注:该模块的所有传感器的I2C地址均不同,用户可同时使用板载的所有传感器。</font> | |
− | + | <br /> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | =VisionFive2 前期准备= |
− | + | == 库安装 == | |
− | + | apt-get install pip | |
− | + | pip install VisionFive.gpio | |
− | + | apt-get install python3-numpy | |
− | + | apt-get install python3-pil | |
− | + | apt-get install python3-smbus | |
− | + | == 下载程序 == | |
− | + | apt-get install p7zip-full | |
− | + | wget http://www.waveshare.net/w/upload/6/6c/Sense-HAT-B-Demo.7z | |
− | + | 7z x Sense-HAT-B-Demo.7z -O./Sense-HAT-B-Demo | |
− | + | cd Sense-HAT-B-Demo | |
− | |||
− | = | + | =ICM20948示例程序 -9轴传感器演示= |
− | + | ==bcm2835程序== | |
进入Linux终端,在终端执行以下命令。 | 进入Linux终端,在终端执行以下命令。 | ||
− | + | cd ICM-20948/Raspberry\ Pi/bcm2835/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./ICM20948_DEMO | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn6155.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn6155.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==wiringPi程序== | |
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd ICM-20948/Raspberry\ Pi/wiringPi/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./ICM20948_DEMO | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn6373.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn6373.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==lgpio程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd ICM-20948/Raspberry\ Pi/lgpio/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./ICM20948_DEMO | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn6373.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==python程序== | |
− | + | 进入Linux终端,在终端执行以下命令。<br /> | |
− | + | cd ICM-20948/Raspberry\ Pi/python/ | |
+ | sudo python3 ICM20948.py | ||
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn6507.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn6507.png|800px]]<br /> | ||
+ | |||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==VisionFive2程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd ICM-20948/VisionFive2 | ||
+ | python3 ICM20948.py | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==STM32程序== | |
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。 | 该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。 | ||
连线如下:<br /> | 连线如下:<br /> | ||
第235行: | 第224行: | ||
[[File:sense-hat-b-user-manual-cn6732.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn6732.png|800px]]<br /> | ||
− | == | + | ==参数校准和计算== |
+ | === 计算加速度 === | ||
+ | 程序测量出的加速度单位是LSB(最低有效位),实际使用中常常把单位换算成重力加速度(g)。模块的示例程序默认设置AFS_SEL=0,对应量程为16384 LSB/g(±2g),所以测量的实际加速度为:<br /> | ||
+ | 𝑎=Acceleration/16384 ,𝑈𝑛𝑖𝑡:𝑔 <br /> | ||
+ | |||
+ | 请参考:[https://www.waveshare.net/w/upload/5/57/ICM-20948-v1.3.pdf ICM-20948-v1.3.pdf] 第12页<br /> | ||
+ | === 计算陀螺仪角速度 === | ||
+ | 程序测量出的角速度单位是LSB(最低有效位),实际使用中常常把单位换算成角速度(°/秒)。模块的示例程序默认设置FS_SEL=2,对应量程为32.8 LSB/(°/s)(±1000°/秒),所以测量的实际角速度为:<br /> | ||
+ | ω=Gyroscope/32.8 ,Unit:°/s <br /> | ||
+ | |||
+ | 请参考:[https://www.waveshare.net/w/upload/5/57/ICM-20948-v1.3.pdf ICM-20948-v1.3.pdf] 第11页<br /> | ||
+ | |||
+ | =LPS22HBTR示例程序-气压传感器演示= | ||
<font color="#FF0000">注意:气压传感器的温度检测只作为补偿作用,如需准确的温度检测,请观察SHTC3温湿度传感器的数值为准。</font> | <font color="#FF0000">注意:气压传感器的温度检测只作为补偿作用,如需准确的温度检测,请观察SHTC3温湿度传感器的数值为准。</font> | ||
− | + | ==bcm2835程序== | |
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd LPS22HBTR/Raspberry\ Pi/bcm2835/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./LPS22HB | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn6951.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn6951.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==wiringPi程序== | |
进入Linux终端,在终端执行以下命令。 | 进入Linux终端,在终端执行以下命令。 | ||
− | + | cd LPS22HBTR/Raspberry\ Pi/wiringPi/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./LPS22HB | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn7165.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn7165.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ||
− | + | ==lgpio程序== | |
− | + | 进入Linux终端,在终端执行以下命令。 | |
+ | cd LPS22HBTR/Raspberry\ Pi/lgpio/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./LPS22HB | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn7165.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==python程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd LPS22HBTR/Raspberry\ Pi/python/ | ||
+ | sudo python3 LPS22HB.py | ||
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn7296.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn7296.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==VisionFive2程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd LPS22HB/VisionFive2 | ||
+ | python3 LPS22HB.py | ||
+ | |||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==STM32程序== | |
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | 该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | ||
连线如下: | 连线如下: | ||
第285行: | 第304行: | ||
[[File:sense-hat-b-user-manual-cn7521.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn7521.png|800px]]<br /> | ||
− | = | + | =SHTC3示例程序-温湿度传感器演示= |
<font color="#FF0000">注意:树莓派自身发热会影响实际测量温度,板子有引出I2C接口,如需准确的环境温度,可将树莓派跟模块隔一段距离再通过线材来连接来检测。</font> | <font color="#FF0000">注意:树莓派自身发热会影响实际测量温度,板子有引出I2C接口,如需准确的环境温度,可将树莓派跟模块隔一段距离再通过线材来连接来检测。</font> | ||
− | + | ==bcm2835程序== | |
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd SHTC3/Raspberry\ Pi/bcm2835/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./SHTC3 | |
− | |||
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn7730.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn7730.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==wiringPi程序== | |
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd SHTC3/Raspberry\ Pi/wiringPi/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./SHTC3 | |
预期结果:<br /> | 预期结果:<br /> | ||
− | [[File:sense-hat-b-user-manual-cn7936.png|800px]] | + | [[File:sense-hat-b-user-manual-cn7936.png|800px]]<br /> |
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==lgpio程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd SHTC3/Raspberry\ Pi/lgpio/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./SHTC3 | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn7936.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==python程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd SHTC3/Raspberry\ Pi/python/ | ||
+ | sudo python3 SHTC3.py | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn7937.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==VisionFive2程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd SHTC3/VisionFive2 | ||
+ | python3 SHTC3.py | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==STM32程序== | |
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | 该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | ||
连线如下:<br /> | 连线如下:<br /> | ||
第333行: | 第373行: | ||
[[File:sense-hat-b-user-manual-cn8197.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn8197.png|800px]]<br /> | ||
− | = | + | =TCS34725示例程序-颜色识别传感器演示= |
− | + | '''树莓派5目前无法识别TCS34725,原因:TCS34725不应答 | |
+ | ==bcm2835程序== | ||
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd TCS34725/Raspberry\ Pi/bcm2835/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./main | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn8415.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn8415.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==wiringPi程序== | |
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd TCS34725/Raspberry\ Pi/wiringPi/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./main | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn8627.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn8627.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ||
+ | ==lgpio程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd TCS34725/Raspberry\ Pi/lgpio/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./main | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn8627.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==python程序== | ||
在终端输入以下命令执行程序:<br /> | 在终端输入以下命令执行程序:<br /> | ||
− | + | cd TCS34725/RaspberryPi/python/ | |
+ | sudo python3 main.py | ||
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn8756.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn8756.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==VisionFive2程序== | |
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | 安装pygame库</br> | ||
+ | apt-get install pygame | ||
+ | 运行程序</br> | ||
+ | cd TCS34725/VisionFive2 | ||
+ | python3 main.py | ||
+ | |||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==STM32程序== | ||
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | 该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | ||
连线如下: | 连线如下: | ||
第383行: | 第446行: | ||
https://www.sioe.cn/yingyong/yanse-rgb-16/ | https://www.sioe.cn/yingyong/yanse-rgb-16/ | ||
也可以下载<br /> | 也可以下载<br /> | ||
− | + | https://{{SERVERNAME}}/w/upload/0/05/Hexacolor3.7z | |
[[File:sense-hat-b-user-manual-cn9116.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn9116.png|800px]]<br /> | ||
[[File:sense-hat-b-user-manual-cn9118.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn9118.png|800px]]<br /> | ||
− | = | + | =ADS1015示例程序-AD转换演示= |
− | + | ==bcm2835程序== | |
进入Linux终端,在终端执行以下命令。 | 进入Linux终端,在终端执行以下命令。 | ||
− | + | cd ADS1015/Raspberry\ Pi/bcm2835/ | |
− | + | sudo make clean | |
− | + | sudo make | |
− | + | sudo ./AD | |
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn9329.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn9329.png|800px]]<br /> | ||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==wiringPi程序== | |
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd ADS1015/Raspberry\ Pi/wiringPi/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./AD | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn9536.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==lgpio程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd ADS1015/Raspberry\ Pi/lgpio/ | ||
+ | sudo make clean | ||
+ | sudo make | ||
+ | sudo ./AD | ||
+ | 预期结果:<br /> | ||
+ | [[File:sense-hat-b-user-manual-cn9536.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | |||
+ | ==python程序== | ||
进入Linux终端,在终端执行以下命令。<br /> | 进入Linux终端,在终端执行以下命令。<br /> | ||
− | + | cd ADS1015/Raspberry\ Pi/python/ | |
− | + | sudo python3 AD.py | |
− | |||
− | |||
预期结果:<br /> | 预期结果:<br /> | ||
[[File:sense-hat-b-user-manual-cn9536.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn9536.png|800px]]<br /> | ||
+ | 按下Ctrl+C结束程序。<br /> | ||
+ | ==VisionFive2程序== | ||
+ | 进入Linux终端,在终端执行以下命令。<br /> | ||
+ | cd ADS1015/VisionFive2 | ||
+ | python3 AD.py | ||
+ | |||
按下Ctrl+C结束程序。<br /> | 按下Ctrl+C结束程序。<br /> | ||
− | + | ==STM32程序== | |
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | 该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。<br /> | ||
连线如下:<br /> | 连线如下:<br /> | ||
第431行: | 第518行: | ||
</div> | </div> | ||
− | <div class="tabbertab" title="资料"> | + | <div class="tabbertab" title="资料" id="myresources"> |
+ | |||
+ | <h1>资料</h1> | ||
==文档== | ==文档== | ||
− | <!--*[ | + | <!--*[https://{{SERVERNAME}}/w/upload/b/b4/Sense-HAT-B-Manual-CN.pdf 用户手册]--> |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/4/43/Sense-HAT-B-Schematic.pdf 原理图] |
<!--*[[:File:Sense-HAT-B-Schematic.pdf|原理图]]--> | <!--*[[:File:Sense-HAT-B-Schematic.pdf|原理图]]--> | ||
==程序== | ==程序== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/6/6c/Sense-HAT-B-Demo.7z 示例程序] |
==相关资料== | ==相关资料== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/2/20/Lps22hb.pdf LPS22HBTR数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/3/33/SHTC3_Datasheet.pdf SHTC3数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/1/13/TCS34725.pdf TCS34725数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/e/e1/Ads1015.pdf ADS1015数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/5/57/ICM-20948-v1.3.pdf ICM-20948数据手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/c/cc/Lsf0204d.pdf LSF0204数据手册] |
+ | *[https://www.waveshare.net/w/upload/2/2f/SGM58031.pdf SGM58031数据手册] | ||
</div> | </div> | ||
− | <div class="tabbertab" title="FAQ"><br /> | + | <div class="tabbertab" title="FAQ" id="myfaq"> |
+ | |||
+ | =FAQ= | ||
+ | <br /> | ||
{{FAQ| 1.树莓派例程初始化失败?(以下以TC34725颜色识别传感器为例)<br /> | {{FAQ| 1.树莓派例程初始化失败?(以下以TC34725颜色识别传感器为例)<br /> | ||
[[File:sense-hat-b-user-manual-cn9804.png|800px]]<br /> | [[File:sense-hat-b-user-manual-cn9804.png|800px]]<br /> | ||
第460行: | 第553行: | ||
|||}} | |||}} | ||
{{FAQ|不正确的使用树莓派控制可能会导致?| | {{FAQ|不正确的使用树莓派控制可能会导致?| | ||
− | + | 如果运行BCM2835例程正常,再运行python或者wiringPi可能会屏幕无法正常刷新,因为bcm2835库是树莓派cpu芯片的库函数,底层是直接操作寄存器,而wiringPi库和python的底层都是通过读写linux系统的设备文件操作设备,可能导致GPIO口异常,重启树莓派可完美解决。|||}} | |
{{FAQ| STM32例程串口输出没有数据或者数据输出乱码?| | {{FAQ| STM32例程串口输出没有数据或者数据输出乱码?| | ||
答:确认波特率是否设置为115200,对于STM32例程请确认电脑正确连接开发板USART2(PA2,PA3),PA2为TXD,并且选择正确的COM端口。控制面板->硬件->设备管理器。<br /> | 答:确认波特率是否设置为115200,对于STM32例程请确认电脑正确连接开发板USART2(PA2,PA3),PA2为TXD,并且选择正确的COM端口。控制面板->硬件->设备管理器。<br /> | ||
第474行: | 第567行: | ||
− | <div class="tabbertab" title="售后"><br />{{ | + | <div class="tabbertab" title="售后" id="mysupport"> |
+ | |||
+ | <h1>技术支持</h1> | ||
+ | <br />{{Service20}}</div> | ||
+ | </div> |
2023年12月26日 (二) 14:49的最新版本
| |||||||||||||||||||||
| |||||||||||||||||||||
说明
产品概述
我是专为树莓派设计的传感器扩展板,板载了陀螺仪、加速度计、磁力计、气压计和温湿度传感器等,I2C接口通信,支持外接更多传感器。 如果你想把树莓派DIY成可以检测运动姿态、方位的机器人,或者想让树莓派采集周围环境的温湿度、大气压强等传感器数据,那就带上我吧。
产品特点
- 板载Raspberry Pi 40pin GPIO接口,适用于Raspberry Pi系列主板
- 板载ICM20948(3轴加速度、3轴陀螺仪和3轴磁力计),可检测运动姿态、方位和磁场
- 板载SHTC3数字温湿度传感器,可感知环境的温度和湿度
- 板载LPS22HB大气压强传感器,可感知环境的大气压强
- 板载TCS34725颜色识别传感器,可识别周围物体的颜色
- 板载ADS1015芯片,4通道12位精度ADC,可扩展AD功能以便接入更多传感器
- 引出I2C控制接口,方便接入STM32等主控板
- 提供完善的配套资料手册(Raspberry/STM32等示例程序)
产品参数
产品参数 | |
工作电压: | 3.3V |
通信接口: | I2C |
逻辑电压: | 3.3V |
产品尺寸: | 65 x 30.5(mm) |
加速度计特性: | 分辨率:16位 |
量程(可选):±2、±4、±8、±16g | |
陀螺仪计特性: | 分辨率:16位 |
量程(可选):±250、±500、 ±1000、±2000°/sec | |
磁力计特性: | 分辨率:16位 |
量程:±4900µT | |
气压计特性: | 分辨率:24位压力数据,16位温度数据; |
测量精度(常温下): ±0.025hPa | |
测量范围:260 ~ 1260 hPa | |
测量速率:1 Hz - 75 Hz | |
温湿度传感器特性: | 测量精度(湿度):±2% rH |
测量范围(湿度):0% ~ 100% rH | |
测量精度(温度):±0.2°C | |
测量范围(湿度):-30 ~ 100°C | |
颜色识别传感器 | 分辨率:4通道RGBC,每个通道16位 |
AD转换芯片 | 分辨率:12位 |
产品大PK
PK项 | Sense HAT (B) | 树莓派Sense HAT | 备注 |
陀螺仪 | 测量范围:±250/500/1000/2000 dps 分辨率:16位 |
测量范围:±245/500/2000 dps 分辨率:16位 |
B型角速度可选量程更多 |
加速度计 | 测量范围:±2/4/8/16 g 分辨率:16位 |
测试范围:±2/4/8/16 g 分辨率:16位 |
|
磁力计 | 测量范围:±49 gauss 分辨率:16位 |
测量范围:±4/8/12/16 gauss 分辨率:16位 |
B型磁力测量范围更广 |
气压计 | 测量范围:260 ~ 1260 hPa 测量精度(常温下): ±0.025hPa 测量速率:1 Hz - 75 Hz |
测量范围:260 ~ 1260 hPa 测量精度(常温下):±0.1 hPa 测量速率:1 Hz - 25 Hz |
B型大气压测量的精度更高,速率更快 |
温湿度传感器 | 测量精度(湿度):±2% rH 测量范围(湿度):0% ~ 100% rH 测量精度(温度):±0.2°C 测量范围(温度):-30 ~ 100°C |
测量精度:±4.5% rH 测量范围:20% ~ 80% rH 测量精度(温度):±0.5°C 测量范围(温度):15 ~ 40°C |
B型温湿度测量的精度更高,范围更广 |
其他 | 颜色识别传感器 高精度12位AD转换芯片 |
8×8 RGB LED矩阵 五向摇杆 |
B型板载颜色传感器,支持AD接入更多传感器 |
树莓派使用指南
硬件连接
开启I2C接口
- 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动
sudo reboot
安装库函数
如果使用bookworm系统,只能使用lgpio库,bcm2835跟wiringPi无法安装与使用
BCM2835
#打开树莓派终端,并运行以下指令 wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz tar zxvf bcm2835-1.71.tar.gz cd bcm2835-1.71/ sudo ./configure && sudo make && sudo make check && sudo make install # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
wiringPi
#打开树莓派终端,并运行以下指令 cd sudo apt-get install wiringpi #对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级: wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错 #Bullseye分支系统使用如下命令: git clone https://github.com/WiringPi/WiringPi cd WiringPi ./build gpio -v # 运行gpio -v会出现2.70版本,如果没有出现说明安装出错
lgpio
#打开树莓派终端,并运行以下指令 wget https://github.com/joan2937/lg/archive/master.zip unzip master.zip cd lg-master sudo make install # 更多的可以参考官网:https://github.com/gpiozero/lg
python
sudo apt update sudo apt install python3-pip sudo apt install python3-spidev sudo apt install python3-smbus
下载例程
sudo apt-get install p7zip-full wget http://www.waveshare.net/w/upload/6/6c/Sense-HAT-B-Demo.7z 7z x Sense-HAT-B-Demo.7z -O./Sense-HAT-B-Demo cd Sense-HAT-B-Demo
I2C设备地址
ADS1015/SGM58031: AD转换例程(STM32 , BCM2835,WringPi 和Python四种例程)设备地址:0x48
ICM-20948:9轴传感器例程(STM32 , BCM2835,WringPi 和Python四种例程)设备地址:0x68
LPS22HB:气压传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x5C
SHTC3:温湿度传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x70
TCS34725:颜色识别传感器例程(STM32 , BCM2835,WringPi 和Python四种例程 )设备地址:0x29
注:该模块的所有传感器的I2C地址均不同,用户可同时使用板载的所有传感器。
VisionFive2 前期准备
库安装
apt-get install pip pip install VisionFive.gpio apt-get install python3-numpy apt-get install python3-pil apt-get install python3-smbus
下载程序
apt-get install p7zip-full wget http://www.waveshare.net/w/upload/6/6c/Sense-HAT-B-Demo.7z 7z x Sense-HAT-B-Demo.7z -O./Sense-HAT-B-Demo cd Sense-HAT-B-Demo
ICM20948示例程序 -9轴传感器演示
bcm2835程序
进入Linux终端,在终端执行以下命令。
cd ICM-20948/Raspberry\ Pi/bcm2835/ sudo make clean sudo make sudo ./ICM20948_DEMO
wiringPi程序
进入Linux终端,在终端执行以下命令。
cd ICM-20948/Raspberry\ Pi/wiringPi/ sudo make clean sudo make sudo ./ICM20948_DEMO
lgpio程序
进入Linux终端,在终端执行以下命令。
cd ICM-20948/Raspberry\ Pi/lgpio/ sudo make clean sudo make sudo ./ICM20948_DEMO
python程序
进入Linux终端,在终端执行以下命令。
cd ICM-20948/Raspberry\ Pi/python/ sudo python3 ICM20948.py
按下Ctrl+C结束程序。
VisionFive2程序
进入Linux终端,在终端执行以下命令。
cd ICM-20948/VisionFive2 python3 ICM20948.py
按下Ctrl+C结束程序。
STM32程序
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。
连线如下:
Sense HAT (B) | STM32 |
VCC | +5V/+3.3V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
参数校准和计算
计算加速度
程序测量出的加速度单位是LSB(最低有效位),实际使用中常常把单位换算成重力加速度(g)。模块的示例程序默认设置AFS_SEL=0,对应量程为16384 LSB/g(±2g),所以测量的实际加速度为:
𝑎=Acceleration/16384 ,𝑈𝑛𝑖𝑡:𝑔
请参考:ICM-20948-v1.3.pdf 第12页
计算陀螺仪角速度
程序测量出的角速度单位是LSB(最低有效位),实际使用中常常把单位换算成角速度(°/秒)。模块的示例程序默认设置FS_SEL=2,对应量程为32.8 LSB/(°/s)(±1000°/秒),所以测量的实际角速度为:
ω=Gyroscope/32.8 ,Unit:°/s
请参考:ICM-20948-v1.3.pdf 第11页
LPS22HBTR示例程序-气压传感器演示
注意:气压传感器的温度检测只作为补偿作用,如需准确的温度检测,请观察SHTC3温湿度传感器的数值为准。
bcm2835程序
进入Linux终端,在终端执行以下命令。
cd LPS22HBTR/Raspberry\ Pi/bcm2835/ sudo make clean sudo make sudo ./LPS22HB
wiringPi程序
进入Linux终端,在终端执行以下命令。
cd LPS22HBTR/Raspberry\ Pi/wiringPi/ sudo make clean sudo make sudo ./LPS22HB
lgpio程序
进入Linux终端,在终端执行以下命令。
cd LPS22HBTR/Raspberry\ Pi/lgpio/ sudo make clean sudo make sudo ./LPS22HB
python程序
进入Linux终端,在终端执行以下命令。
cd LPS22HBTR/Raspberry\ Pi/python/ sudo python3 LPS22HB.py
VisionFive2程序
进入Linux终端,在终端执行以下命令。
cd LPS22HB/VisionFive2 python3 LPS22HB.py
按下Ctrl+C结束程序。
STM32程序
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。
连线如下:
Sense HAT (B) | STM32 |
VCC(注意:跳线帽要跳到相应位置) | +5V/+3.3V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
SHTC3示例程序-温湿度传感器演示
注意:树莓派自身发热会影响实际测量温度,板子有引出I2C接口,如需准确的环境温度,可将树莓派跟模块隔一段距离再通过线材来连接来检测。
bcm2835程序
进入Linux终端,在终端执行以下命令。
cd SHTC3/Raspberry\ Pi/bcm2835/ sudo make clean sudo make sudo ./SHTC3
wiringPi程序
进入Linux终端,在终端执行以下命令。
cd SHTC3/Raspberry\ Pi/wiringPi/ sudo make clean sudo make sudo ./SHTC3
lgpio程序
进入Linux终端,在终端执行以下命令。
cd SHTC3/Raspberry\ Pi/lgpio/ sudo make clean sudo make sudo ./SHTC3
python程序
进入Linux终端,在终端执行以下命令。
cd SHTC3/Raspberry\ Pi/python/ sudo python3 SHTC3.py
VisionFive2程序
进入Linux终端,在终端执行以下命令。
cd SHTC3/VisionFive2 python3 SHTC3.py
按下Ctrl+C结束程序。
STM32程序
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。
连线如下:
Sense HAT (B) | STM32 |
VCC(注意:跳线帽要跳到相应位置) | +5V/+3.3V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
编译并下载程序:
预期结果:
传感器正常无错误,LED2亮起:
当空气湿度低于80%时LED3不亮。当空气湿度大于或等于80%时LED3亮起。
TCS34725示例程序-颜色识别传感器演示
树莓派5目前无法识别TCS34725,原因:TCS34725不应答
bcm2835程序
进入Linux终端,在终端执行以下命令。
cd TCS34725/Raspberry\ Pi/bcm2835/ sudo make clean sudo make sudo ./main
wiringPi程序
进入Linux终端,在终端执行以下命令。
cd TCS34725/Raspberry\ Pi/wiringPi/ sudo make clean sudo make sudo ./main
lgpio程序
进入Linux终端,在终端执行以下命令。
cd TCS34725/Raspberry\ Pi/lgpio/ sudo make clean sudo make sudo ./main
python程序
在终端输入以下命令执行程序:
cd TCS34725/RaspberryPi/python/ sudo python3 main.py
VisionFive2程序
进入Linux终端,在终端执行以下命令。
安装pygame库
apt-get install pygame
运行程序
cd TCS34725/VisionFive2 python3 main.py
按下Ctrl+C结束程序。
STM32程序
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。
连线如下:
Sense HAT (B) | STM32 |
VCC(注意:跳线帽要跳到相应位置) | +5V/+3.3V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
编译并下载程序:
打开串口助手,设置波特率为115200
预期结果:
这数据怎么转换成颜色呢?下面介绍一个工具,复制到浏览器打开即可
https://www.sioe.cn/yingyong/yanse-rgb-16/
也可以下载
https://www.waveshare.net/w/upload/0/05/Hexacolor3.7z
ADS1015示例程序-AD转换演示
bcm2835程序
进入Linux终端,在终端执行以下命令。
cd ADS1015/Raspberry\ Pi/bcm2835/ sudo make clean sudo make sudo ./AD
按下Ctrl+C结束程序。
wiringPi程序
进入Linux终端,在终端执行以下命令。
cd ADS1015/Raspberry\ Pi/wiringPi/ sudo make clean sudo make sudo ./AD
lgpio程序
进入Linux终端,在终端执行以下命令。
cd ADS1015/Raspberry\ Pi/lgpio/ sudo make clean sudo make sudo ./AD
python程序
进入Linux终端,在终端执行以下命令。
cd ADS1015/Raspberry\ Pi/python/ sudo python3 AD.py
VisionFive2程序
进入Linux终端,在终端执行以下命令。
cd ADS1015/VisionFive2 python3 AD.py
按下Ctrl+C结束程序。
STM32程序
该例程基于XNUCLEO-F103RB 开发板,通过串口2输出数据。
连线如下:
Sense HAT (B) | STM32 |
VCC(注意:跳线帽要跳到相应位置) | +5V/+3.3V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
资料
文档
程序
相关资料
FAQ