PAJ7620U2 Gesture Sensor
来自Waveshare Wiki
| ||||||||||||||||||||
| ||||||||||||||||||||
说明
产品概述
PAJ7620U2 Gesture Sensor是一款基于PAJ7620U2的手势识别模块,可直接识别9种基本手势,支持I2C接口,兼容3.3V/5V电平。
特点
- 基于PAJ7620U2传感器,可直接识别9种基本手势,支持手势中断输出
- 内置红外LED和光学镜头,能在低光和黑暗环境下工作
- 支持I2C接口通信,仅需两根信号脚即可控制
- 板载电平转换电路,可兼容3.3V/5V的逻辑电平
- 提供完善的配套资料手册(Raspberry/Arduino/STM32示例程序和用户手册等)
产品参数
- 工作电压:3.3V/5V
- 通信接口:I2C
- 识别距离:5CM ~ 15CM
- 识别手势:上、下、左、右、前、后、顺时针、逆时针、摇摆
- 识别速度:240HZ
- 识别视角:60° (对角线)
- 环境光免疫力:<100K LUX
- 产品尺寸:20MM × 20MM
- 过孔直径:2.0MM
- 应用场景:智能家居、办公室和教学;机器人交互、手势玩具、体感游戏装备
接口说明
- 引脚功能
引脚号 | 标识 | 管脚描述 |
1 | VCC | 3.3V/5V电源正 |
2 | GND | 电源地 |
3 | SDA | I2C数据线 |
4 | SCL | I2C时钟线 |
5 | INT | 外部中断引脚 |
产品使用
示例程序
在演示例程中STM32与Arduino例是程通过串口输出手势识别数据,默认波特率为115200(注:可通过修改代码配置下位机通信波特率),如通过串口调试助手调试时,需正确配置好波特率。
官方例程下载
1.在官网上找到对应产品,在产品资料打开下载路径,在wiki中下载示例程序:
2.得到解压包,解压得到如下文件:
Arduino::基于Arduino UNO例程。
STM32:基于STM32F103RBT6的HAL库例程。
RaspberryPi: 树莓派例程,包括bcm2835、wiringPi和Python。
每个平台都含有两个检测例程:
树莓派程序演示
复制到树莓派
2.将解压文件中RaspberryPi文件夹复制到boot根目录下
3.弹出U盘,将SD卡插入树莓派中,然后上电,查看/boot目录
4.将程序复制到用户目录下,并修改用户权限
sudo cp -r /boot/RaspberryPi/ ./ sudo chmod 777 -R RaspberryPi/
cd RaspberryPi
安装库函数
需要安装必要的函数库(wiringPi、bcm2835、python库),否则以下的示例程序可能无法正常工作。
- 安装BCM2835库:
http://www.airspayce.com/mikem/bcm2835/
- 进入BCM2835的官网下载并把安装包复制到树莓派上,运行如下:
sudo tar zxvf bcm2835-1.xx.tar.gz cd bcm2835-1.xx sudo ./configure sudo make sudo make check sudo make install
其中xx代表的是下载的版本号,例如我下载的bcm2835-1.52, 那么就应该执行:sudo tar zxvf bcm2835-1.52.tar.gz。
- 安装wiringPi库:
sudo apt-get install git sudo git clone git://git.drogon.net/wiringPi cd wiringPi sudo ./build
- 安装python库:
sudo apt-get install python-pip sudo pip install RPi.GPIO sudo pip install spidev sudo apt-get install python-imaging sudo apt-get install python-smbus sudo apt-get install python-serial
打开树莓派I2C接口
sudo raspi-config
- 进入设置-选择 5.Interfacing Options(接口选项)
- 选择I2C
- 选择是确认启动I2C接口
硬件连接
- 配送的排线颜色可能跟下图不一致,在连接模块的时候注意对照丝印连接
Gesture Sensor | Raspberry PI(Board) | Raspberry Pi(BCM) |
VCC | 3.3V | 3.3V |
GND | GND | GND |
SDA | 3 | SPIP2 |
SCL | 5 | P3 |
- 在RaspberryPi目录下,进入对应的目录下运行;
- bcm2835程序:
cd bcm2835 cd Gesture make sudo ./PAJ7620U2
cd bcm2835 | 为进入程序目录(注:目录位置为用户所放例程的位置) |
cd Gesture | 进入9种手势检测例程(注:如果接近检测例程为 cd PS) |
make | 编译程序 |
sudo ./PAJ7620U2 | 运行例程 |
- wiringPi程序:
cd wiringPi cd Gesture make sudo ./PAJ7620U2
cd wiringPi | 为进入程序目录(注:目录位置为用户所放例程的位置) |
cd Gesture | 进入9种手势检测例程(注:如果接近检测例程为 cd PS) |
make | 编译程序 |
sudo ./PAJ7620U2 | 运行例程 |
- Python程序:
Python程序: cd python cd Gesture sudo python PAJ7620U2.py
程序效果
- 9种手势检测流程:
- 接近检测例程:
STM32程序演示
本例程使用的开发板为 XNUCLEO-F103RB,芯片为STM32F103RBT6,程序是基于HAL库。
硬件连接
- 将模块连接到XNUCLEO开发板,同时连接XNUCLEO开发板的USB to UART接口到电脑。
Gesture Sensor | STM32 |
VCC | 3.3/5V |
GND | GND |
SDA | PB9 |
SCL | PB8 |
程序编译与下载
程序效果
- 打开串口助手,设置波特率为115200
- 9种手势检测例程:
- 接近检测里程:
Arduino程序演示
本例程使用的开发板为UNO PLUS兼容Arduino UNO
硬件连接
Gesture Sensor | Arduino |
VCC | 5V |
GND | GND |
SDA | SDA |
SCL | SCL |
程序编译与上传
程序效果
- 9种手势检测例程:
- 接近检测例程:
FAQ