Оглавление:
Видео: Raspberry Pi - TMD26721 Infrared Digital Proximity Detector Java Tutorial: 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:47
TMD26721 - это инфракрасный цифровой датчик приближения, который обеспечивает полную систему обнаружения приближения и логику цифрового интерфейса в одном 8-контактном модуле для поверхностного монтажа. Обнаружение приближения включает улучшенное соотношение сигнал / шум и точность. Регистр смещения приближения позволяет компенсировать перекрестные помехи оптической системы между ИК-светодиодом и датчиком. Вот его демонстрация с Raspberry Pi с использованием Java-кода.
Шаг 1: Что вам нужно..
1. Raspberry Pi
2. TMD26721
3. Кабель I²C
4. I²C Shield для Raspberry Pi
5. Кабель Ethernet.
Шаг 2: Подключения:
Возьмите щит I2C для raspberry pi и осторожно наденьте его на контакты gpio raspberry pi.
Затем подключите один конец кабеля I2C к датчику TMD26721, а другой конец - к экрану I2C.
Также подключите кабель Ethernet к Pi, или вы можете использовать модуль Wi-Fi.
Подключения показаны на картинке выше.
Шаг 3: Код:
Java-код для TMD26721 можно загрузить из нашего репозитория github - Сообщества Dcube Store.
Вот ссылка
Мы использовали библиотеку pi4j для java-кода, шаги по установке pi4j на raspberry pi описаны здесь:
pi4j.com/install.html
Вы также можете скопировать код отсюда, он выглядит следующим образом:
// Распространяется по свободной лицензии.
// Используйте его как хотите, для получения прибыли или бесплатно, при условии, что он соответствует лицензиям на связанные с ним работы.
// TMD26721
// Этот код предназначен для работы с мини-модулем TMD26721_I2CS I2C, доступным по адресу
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
import com.pi4j.io.i2c. I2CFactory;
import java.io. IOException;
открытый класс TMD26721
{
public static void main (String args ) выдает исключение
{
// Создаем шину I2C
Шина I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);
// Получение устройства I2C, адрес TMD26721 I2C - 0x39 (57)
Устройство I2CDevice = bus.getDevice (0x39);
// Выбираем регистр времени приближения ИЛИ с регистром команд
// Ptime = 2,73 мс
device.write (0x02 | 0x80, (байт) 0xFF);
// Выбираем регистр времени ожидания ИЛИ с регистром команд
// Wtime = 2,73 мс
device.write (0x03 | 0x80, (байт) 0xFF);
// Выбираем регистр счетчика импульсов ИЛИ с регистром команд
// Количество импульсов = 32
device.write (0x0E | 0x80, (байт) 0x20);
// Выбираем управляющий регистр ИЛИ с командным регистром
// Мощность светодиода 100 мА, в ближайшем будущем используется диод CH1, 1x PGAIN, 1x AGAIN
device.write (0x0F | 0x80, (байт) 0x20);
// Выбираем регистр включения ИЛИ с регистром команд
// Устанавливаем включение питания, приближение и ожидание.
device.write (0x00 | 0x80, (байт) 0x0D);
Thread.sleep (800);
// Считываем 2 байта данных с адреса 0x18 (24)
// близость lsb, близость msb
byte data = новый байт [2];
device.read (0x18 | 0x80, данные, 0, 2);
// Конвертируем данные
int близости = (((данные [1] & 0xFF) * 256) + (данные [0] & 0xFF));
// Выводим данные на экран
System.out.printf («Близость устройства:% d% n», близость);
}
}
Шаг 4: Приложения:
TMD26721 - это инфракрасный цифровой датчик приближения, который может быть встроен в управление сенсорным экраном мобильного телефона и автоматическое включение громкой связи. Он также может обеспечить замену механического переключателя, а также выравнивание бумаги. Его высокая эффективность и надежность делают его пригодным для различных применений, связанных с датчиком приближения.
Рекомендуемые:
Arduino Nano - MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Tutorial: 4 шага
Arduino Nano - MMA8452Q 3-осевой 12-битный / 8-битный цифровой акселерометр Учебное пособие: MMA8452Q - это интеллектуальный, маломощный, трехосевой, емкостный, микромашинный акселерометр с разрешением 12 бит. Гибкие возможности программирования пользователем предоставляются с помощью встроенных функций в акселерометр, конфигурируемых на два прерывания
Raspberry Pi - ADXL345 3-Axis Accelerometer Java Tutorial: 4 шага
Raspberry Pi - 3-осевой акселерометр ADXL345 Учебное пособие по Java: ADXL345 - это небольшой, тонкий, сверхмалопотребляющий 3-осевой акселерометр с высоким разрешением (13 бит) при измерении до ± 16 г. Данные цифрового вывода форматируются как 16-битное дополнение до двоек и доступны через цифровой интерфейс I2C. Он измеряет
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 шага
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: A1332 - это бесконтактный программируемый магнитный датчик углового положения с высоким разрешением на 360 °. Он разработан для цифровых систем, использующих интерфейс I2C. Он построен на технологии Кругового Вертикального Холла (CVH) и программируемом микропроцессорном сигнале
Raspberry Pi MMA8452Q 3-осевой 12-битный / 8-битный цифровой акселерометр Java Tutorial: 4 шага
Raspberry Pi MMA8452Q 3-осевой 12-битный / 8-битный цифровой акселерометр Java Учебное пособие: MMA8452Q - это умный, маломощный, трехосевой, емкостной, микромашинный акселерометр с разрешением 12 бит. Гибкие возможности программирования пользователем предоставляются с помощью встроенных функций в акселерометр, конфигурируемых на два прерывания
Приложение Proximity Photo Sharing для iOS: 6 шагов
Приложение для iOS для обмена фотографиями на близком расстоянии: в этом руководстве мы создадим приложение для iOS со Swift, которое позволит вам обмениваться фотографиями с кем угодно поблизости без необходимости сопряжения устройств. Мы будем использовать Chirp Connect для отправки данных с использованием звука и Firebase для хранения изображений в закрытом