Electroworld

Electroworld

На Пикабу
179 рейтинг 5 подписчиков 5 подписок 2 поста 1 в горячем
Награды:
5 лет на Пикабу
6

Как я подключал матричную клавиатуру 4х3 к arduino

Привет!! Сегодня речь пойдет о том как прикрутить к arduino вот такую вот клаву:

Итак что понадобится:
- любая arduina (мини, микро, надо, гига)😀
- библиотека для работы с клавой (можете найти в инете, или скачать под моим видео на ютубу ссылка на него чуть ниже)
- сама клавиатура 4х3 ну можно и 4х4
- Светодиод, серва, LCD, ну или то что есть под рукой.

Купил значит на алише вот тут: http://ali.ski/VeHkyt
сей девайс за 40 рублей (наши рАссийские магазины в край охерели цены ломить), нашел в интернете готовую библиотеку под нее и понеслась!

Включил короче ее вот так:

И давай выяснять, как ее можно использовать и как она работает. Все кто имел дело с ардуино наверняка подключали тактовую кнопку. Принцип работы основан на чтении состояния пина (HIGH или LOW) и по изменению состояния происходит какое-то событие. Клава вместе с библиотекой и вот таким массивом:
(Массив для клавы 4х3)
char hexaKeys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};


Работает так:
1) Подключаем библиотеку
2) Определение строк и столбцов
3) Сосздание массива (см. Выше)
4) Назначение пинов для строк и столбов
5) Обьявление класса для клавы
6) Обьявление локальной переменной типа char
7) Запись значения нажатой кнопки в переменную
8) Назначение событий для каждой кнопки
9) Ну и собстно событие для данной кнопки

А теперь подробно:
1) Подключается библиотека (ну это дажу гуманитарии знают как)

2) Определение строк и столбцов
const byte ROWS = 4; // 4 строки
const byte COLS = 3; // 3 столбца

3) Массив смотрите выше

4) Назначение пинов для строк и столбцов. Слева на право по шлейфу клавы - сначало первыми идут строки, затем столбцы.

byte rowPins[ROWS] = {8, 7, 6, 5}; //Подключение пинов строк

byte colPins[COLS] = {4, 3, 2}; // Подключение пинов столбцов

5) Обьявляем класс
Keypad Keypres = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

6-7) В лупе обьявляем переменную типа char, и сразу же ей передаем значение нажатой кнопки.

char Key = Keypres.getKey();

8-9) Назначение события для каждой кнопки. Ну нажал я допустим кнопку 1. Основная переменная которая работает с клавой у меня char, и значения она хранит не цифры, а символы. Но это не беда! Операторам if или switch с ней работать просто. Я выбрал if.

if (Key == '1'){
digitalWrite(LED, HIGH);
}


Как только условие if совпало со значением кнопки, у меня загорается светодиод.

Более подробно тут:
https://youtu.be/cfzE2QLOgBw

Вроде ничего сложного. Итого у меня клава заняла 7 цифровых пинов. Для проектов сойдет более чем. Кстати чтоб не париться за наличием малого числа свободных программируемых пинов есть сдвиговые регистры - занимают примерно 4 пина. А есть такая штука, как PCF8574T
дак она садится на шину I2C к которой можно присобачить овердохера девайсов, дает 8 новых вход/выход пинов. Ну для аналоговой части есть мультиплексоры.

В будующих постах обо всем поговорим.

Показать полностью 2
78

Клещи токовые + авометр + термометр на базе arduino.

Привет всем! Собрал для себя такой вот тестер.
Характеристики:
- Мозги. Arduino pro mini.
- Тест радиодеталей.
- Токовые клещи до 950 ампер.
- Вольтметр переменки до 600 вольт.
- Вольтметр постоянки до 50 вольт (можно изменить до 600)
- Прозвонка.
- Тестер термопар ТХА.(К.L)
- Термометр до 650 градусов.
- Амперметр промышленных сигналов 0-20мА.
- Амперметр до 10А
- Тестер датчиков ТСМ, ТСП 50-100.
- Омметр
- Память независимая для записи параметров измеряемых.
- Меню настройки для калибровки (чтоб не подключаться к ноутбуку)

Работаю на ТЭЦ цех ТАИ. Станция большая, на щиты ходить далеко. Вдруг что-то вышло из строя или крутнуть по клещам задвижку, но или мало чего. Идти до себя далеко, долго чтобы взять "Цэшку" или клещи, и потом груженый барахлом разным идти на заявку. Возникла идея сделать авометр, клещи, термометр в одном корпусе. Да еще и с разными примочками (тестер радиодеталей, память для параметров с записью в режиме реального времени, и прочие мелочи).

Итак теперь к делу.

Меню тестера (не полное).

На дисплее отображаются режимы, индикатор заряда батареи, и иногда служебные символы.

Режим токовых клещей. Замерял на подключеном в сеть чайнике термосе. Показывает 0.36 А. Шкала на 2 А установлена. (Шкалу для 2А сделал максимально чувствительной

Измерение тока работающей микроволновки и чайника.

А теперь подробнее о клещах. Слева направо. 1) Ток текущий округленный до целых единиц. 2) RMS конечно не правильно. Но для меня это ассоциация с средним значением😀. 3) Максимальный ток. 4) Диапазон шкалы.
Не трудно посчитать: мощность микроволновки 2-2.5 кВт + Чайник.
Полученый ток умножаем на напряжение 10х220 = 2200 Ватт. Вообщем уверяю что клещи рабочие и точность не на последнем месте.😀

Далее тестер радиодеталей.
Измерение подстроечного резистора на 1кОм.

Измерение статора двигателя.

И измерение одной из обмоток с определением ее индуктивности.

Далее тест биполярного транзистора. С определением его выводов (База, коллектор, эмиттер) Структуры (NPN). Коэффициент усиления (87). И напряжение открытия (597мВ).

На борту имеется вольтметр до 600 вольт переменки. После входа в этот режим специально сделал так чтобы загорался светодиод, как сигнал быть внимательным! Не перепутать разьемы подключения, и быть осторожным с высоким напряжением.

И еще измерение датчика типа ТСМ50 (такие используют для измерения температуры)

Тестер замеряет сопротивление датчика, далее математика переводит оМы в температуру для 50М, 100М, 50П, 100П. Погрешность в этом режиме 0,7 градуса.

Более подробно о гаджете здесь:
https://youtu.be/3ikp3bh8pxY


Ну вообщем такой вот аппарат. Схема, функции, и прочее делалось только под себя (свои условия работы) Все легко можно изменить, перепаяв схему (добавить датчики и прочее) или изменив софт (изменить логику работы математических обсчетов, добавить пункты меню, заставить работать новые подключенные устройства).

Пользуюсь уже год, замечаний нет.
😀😀 Естественно ТБшники не знают чем я работаю.

Показать полностью 10
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества