5

Электронная копилка на Arduino

Доброго времени суток.

Хочу поделиться проектом: создание электронной копилки для монет на базе Arduino Nano.


Управлять всей схемой будет микроконтроллер Atmega328p, который встроен в Nano.


В качестве датчика для определения номинала монеты буду использовать фототранзистор L-53P3C и два ИК-светодиода L-53F3C.


Технические характеристики транзистора:

• длина волны, нм: 940

• угол обзора, град: 30

• Uceo, В: 30

• Чувствительность: 0.1-0.5мА, 1мВт/см3


Технические характеристики диода:

• длина волны,нм: 940

• угол,град 30

• мощность излучения,мВт: 30

• прямое напряжение,В1: 2

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

Питание будет осуществляться от литиевого аккумулятора формата 18650.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

К преимуществам этого аккумулятора можно отнести:

• Высокая энергетическая плотность

• низкий саморазряд

• отсутствие эффекта памяти

• простота обслуживания

• низкий удельный вес


Для контроля за зарядом этого аккумулятора используется CB-18650-MMUSB.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

В работе задействован повышающий преобразователь ZC09900.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

Выходное напряжение этого преобразователя выше входного. Например, при входном напряжении 5В на выходе можно получить напряжение до 30В, причем, возможно его плавное регулирование и стабилизация.


Самым оптимальным способом определения номинала монеты будет определения их размера при помощи определения заслоняемого монетой объёма света. При прохождении монеты через датчик фиксируется значение, которое будет соответствовать её размеру.

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

Для проектирования схемы использовал Arduino — Fritzing.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

Далее приведено описание подключения элементов:

Кнопки:

S2 (Отвечает за калибровку заново, если есть такая необходимость):

• черный провод подключен к GND (земля),

• желтый провод подключен к D3 (цифровой).

S1 (Отвечает за то, чтобы копилка вышла из режима сна, и после этого можно бросать монеты):

• черный провод подключен к GND,

• зеленый провод подключен к D2.


VD1 и VD2 (Отвечает за подачу ИК-сигнала на VT1):

• черный провод подключен к GND,

• красный провод подключен к D11.


VT1 (Отвечает за прием ИК-сигнала с VD1 и VD2):

• черный провод подключен к GND,

• синий провод подключен к A0 и к резистору на 10 кОм к A3 (Это делитель напряжения).


Дисплей (Отвечает за вывод суммы и количества монет):

• SCL(синхронизация) подключен через синий провод к A5,

• SDA(данные) подключен через зеленый провод к A4,

• питание на дисплей подается с повышающего преобразователя на вход VCC через красный провод (Повышаем питание дисплея, так как надо 5 В, а аккумулятор выдает меньше),

• GND подключен через черный провод к повышающему преобразователю.


Повышающий преобразователь (отвечает повышение питания дисплея, так как надо 5 В, а аккумулятор выдает 3.7):

• через красный провод подключен к Vcc,

• через синий, далее через МДП-транзистор, который открывает течение тока на повышающий преобразователь.


Модуль USB (Отвечает за зарядку аккумулятора):

• красный провод (питание) подключен к повышающему модулю,

• черный провод подключен к GND.


Следующим этапом разработки являлось создание корпуса для устройства. В качестве корпуса была выбрана шкатулка в виде сундука. Его форма хорошо подходила для размещения в нём всех нужных элементов.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

Далее надо откалибровать оптопару.

Калибровка оптической пары заключалась в том, чтобы постепенными движениями ИК-диодов и фототранзистора определить уровень распознавания монет. Нижний ИК-диод отвечает за распознавание маленьких монет, верхний отвечает за распознавание больших монет.

Затруднение вызывало тот факт, что монеты проходят через датчик с разной скоростью. Это обусловило то, что номинал некоторых монет перепутывался, таких как 10 копеек и 2 копейки.

Также света одного светодиода не хватает на то, что осветить и самую большую и самую маленькую монеты.


Ниже приведён график по которому видно зависимость значения сигнала монеты от времени, которое она проходила через датчик.

Электронная копилка на Arduino Arduino, Копилка, Длиннопост

Вот и всё, в результате проделанной работы была создано устройство для подсчета суммы хранимых монет при помощи оптической пары.

Найдены возможные дубликаты

+4
Очень похоже на проект alеxgyver. Ток монеток больше определяется.
раскрыть ветку 1
+1
Да, он
+3

Давно витает мысль что было бы неплохо иметь копилку для купюр. Эдакий железный сейф с купюроприёмником. Устанавливаешь сумму, он разбивает её по дням и тебе нужно вносить каждый день купюру иначе... сейф выдаёт накопленные купюры обратно по одной, но уже через шредер. Накопил всю сумму - сейф отперся.