PAJ7620U2手势识别模块 使用教程

产品概述

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
  • 应用场景:智能家居、办公室和教学;机器人交互、手势玩具、体感游戏装备

接口说明

  • 引脚功能
引脚号标识管脚描述
1VCC3.3V/5V电源正
2GND电源地
3SDAI2C数据线
4SCLI2C时钟线
5INT外部中断引脚

产品使用

示例程序

在演示例程中STM32与Arduino例是程通过串口输出手势识别数据,默认波特率为115200(注:可通过修改代码配置下位机通信波特率),如通过串口调试助手调试时,需正确配置好波特率。

官方例程下载

1.在官网上找到对应产品,在产品资料打开下载路径,在wiki中下载示例程序:


2.得到解压包,解压得到如下文件:

Arduino::基于Arduino UNO例程。
STM32:基于STM32F103RBT6的HAL库例程。
RaspberryPi: 树莓派例程,包括bcm2835、wiringPi和Python。
每个平台都含有两个检测例程:


树莓派程序演示

复制到树莓派

1.将SD卡插入到电脑,电脑会识别到一个BOOT的移动盘


2.将解压文件中RaspberryPi文件夹复制到boot根目录下


3.弹出U盘,将SD卡插入树莓派中,然后上电,查看/boot目录


4.将程序复制到用户目录下,并修改用户权限

  1. sudo cp -r /boot/RaspberryPi/ ./
  2. sudo chmod 777 -R RaspberryPi/


  1. cd RaspberryPi


安装库函数

需要安装必要的函数库(wiringPi、bcm2835、python库),否则以下的示例程序可能无法正常工作。

  • 安装BCM2835库:

http://www.airspayce.com/mikem/bcm2835/ 

  • 进入BCM2835的官网下载并把安装包复制到树莓派上,运行如下:
  1. sudo tar zxvf bcm2835-1.xx.tar.gz
  2. cd bcm2835-1.xx
  3. sudo ./configure
  4. sudo make
  5. sudo make check
  6. sudo make install

其中xx代表的是下载的版本号,例如我下载的bcm2835-1.52, 那么就应该执行:sudo tar zxvf bcm2835-1.52.tar.gz

  • 安装wiringPi库:
  1. sudo apt-get install git
  2. sudo git clone git://git.drogon.net/wiringPi
  3. cd wiringPi
  4. sudo ./build
  • 安装python库:
  1. sudo apt-get install python-pip
  2. sudo pip install RPi.GPIO
  3. sudo pip install spidev
  4. sudo apt-get install python-imaging
  5. sudo apt-get install python-smbus
  6. sudo apt-get install python-serial

打开树莓派I2C接口

  1. sudo raspi-config
  • 进入设置-选择 5.Interfacing Options(接口选项)


  • 选择I2C


  • 选择是确认启动I2C接口


硬件连接

  • 配送的排线颜色可能跟下图不一致,在连接模块的时候注意对照丝印连接


Gesture SensorRaspberry PI(Board)Raspberry Pi(BCM)
VCC3.3V3.3V
GNDGNDGND
SDA3SPIP2
SCL5P3
  • 在RaspberryPi目录下,进入对应的目录下运行;


Bcm2835、wiringPi、Python均含两个例程

  • bcm2835程序:
  1. cd bcm2835
  2. cd Gesture
  3. make
  4. sudo ./PAJ7620U2
cd bcm2835为进入程序目录(注:目录位置为用户所放例程的位置)
cd Gesture进入9种手势检测例程(注:如果接近检测例程为 cd PS)
make编译程序
sudo ./PAJ7620U2运行例程
  • wiringPi程序:
  1. cd wiringPi
  2. cd Gesture
  3. make
  4. sudo ./PAJ7620U2
cd wiringPi为进入程序目录(注:目录位置为用户所放例程的位置)
cd Gesture进入9种手势检测例程(注:如果接近检测例程为 cd PS)
make编译程序
sudo ./PAJ7620U2运行例程
  • Python程序:
  1. Python程序:
  2. cd python
  3. cd Gesture
  4. sudo python PAJ7620U2.py

程序效果

  • 9种手势检测流程:


  • 接近检测例程:


STM32程序演示

本例程使用的开发板为 XNUCLEO-F103RB,芯片为STM32F103RBT6,程序是基于HAL库。

硬件连接

  • 将模块连接到XNUCLEO开发板,同时连接XNUCLEO开发板的USB to UART接口到电脑。
Gesture SensorSTM32
VCC3.3/5V
GNDGND
SDAPB9
SCLPB8

程序编译与下载



程序效果

  • 打开串口助手,设置波特率为115200
  • 9种手势检测例程:


  • 接近检测里程:



Arduino程序演示

本例程使用的开发板为UNO PLUS兼容Arduino UNO

硬件连接

Gesture SensorArduino
VCC5V
GNDGND
SDASDA
SCLSCL

程序编译与上传


程序效果

  • 9种手势检测例程:


  • 接近检测例程: