Аралаш муун сааты: 6 кадам
Аралаш муун сааты: 6 кадам
Anonim
Аралаш муун сааты
Аралаш муун сааты

Баарыңарга салам, Бул долбоорду 1 ай мурун баштадым, ден соолугум начар болгондуктан (денге оорусуна чалдыктым) көп убакыт өттү. Мен көбүнчө Arduinoго негизделген проект жасайм, ошондуктан саат проектисин жасоо абдан кызыктуу болду.

Кызыктуу проект жасоо үчүн мен саатка байланышкан көптөгөн долбоорлорду жана сааттардын жүздөрүн текшерип көрдүм, акыры аралаш муундагы саат жасоону ойлоп таптым.

Бул мүнөттүк кум көз айнегин, саатты берүү үчүн 90 градустук саатты жана мүнөттөрдү көрсөтүү үчүн 2 жети сегменттүү дисплейди камтыйт.

Аны куралы.

1 -кадам: Керектүү материалдар

  1. 4 Piece 1cm * 3cm * 8cm (h * w * l) жыгач блок. менен.
  2. Балмуздак таякчалары.
  3. 2 бөлүк 180 servo мотор
  4. Жети сегменттүү дисплейдин 2 даана.
  5. Жыгач бургулоочу машина.
  6. Ardunio nano.
  7. Электр менен камсыздоо 5V 1Amp.
  8. Жыгачтан жасалган жыгачтар.
  9. Аялдан аялга кабель.
  10. Бир мүнөттүк кумдук.

2-кадам: Sand-glass жана Servo орнотуу

Кум-айнекти жана сервисти орнотуу
Кум-айнекти жана сервисти орнотуу
Кум-айнекти жана сервисти орнотуу
Кум-айнекти жана сервисти орнотуу
Кум-айнекти жана сервисти орнотуу
Кум-айнекти жана сервисти орнотуу
  1. Жээкчелердин биринде төрт бурчтуу тешик жасаңыз, ал сервого оңой жабыша алат.
  2. жыгачтын үстүнө койгон сервонун контурун белгилеңиз жана бургулоо аркылуу бири -бириңизге жакындатыңыз.
  3. Сервону кандайдыр бир ысык клей же супер клей менен коргоңуз.
  4. Кум айнек менен бирдей көлөмдөгү кичинекей кутуча түзүлдү.
  5. Сүрөттө көрсөтүлгөндөй кутунун ортосуна серво редуктору тиркелет.
  6. Кутунун башка жагында кичинекей тешик жасалды, ал бурагычка кутуну сервого орнотууга орун берет.
  7. Ардуинонун 12 номерине серво пинин туташтырыңыз.
  8. Тиркелген кодду иштетиңиз.
  9. 0 жана 180ди сериялык мониторго жөнөтүңүз жана кум айнектин айлануусун текшериңиз.
  10. Бар болсо, кемчиликтерди оңдоңуз.

3 -кадам: Frame жасаңыз

Кадрды жасаңыз
Кадрды жасаңыз
Кадрды жасаңыз
Кадрды жасаңыз
Кадрды жасаңыз
Кадрды жасаңыз
  1. Эми башка жыгач кесимдерди тиркеп, аны төрт бурчтуу кутуга айлантыңыз.
  2. Экинчи серво позициясын бир саатка чейин чечиңиз.
  3. Балмуздак таякчасын алдыңкы бетти жабуу үчүн колдонуңуз.

4 -кадам: Dail жасаңыз

Дэйл жаса
Дэйл жаса
Дэйл жаса
Дэйл жаса
Дэйл жаса
Дэйл жаса
  1. Супер клейдин жардамы менен ага серво башын бекиткиле.
  2. Андан кийин тиркелген программаны колдонуңуз, Arduino колдонмосунун сериялык мониторун ачыңыз.
  3. 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96 бирден жөнөтүп, жыгач бөлүгүн коюңуз.
  4. Бул ар бир 8 градус айырма менен сааттын 12 интервалдары.
  5. Серво сигналынын пини 12 пинге тиркелет, терүүнү орнотуу үчүн ошого жараша өзгөртө аласыз.

5-кадам: Мин үчүн жети сегменттүү дисплей

Мин үчүн жети сегменттүү дисплей
Мин үчүн жети сегменттүү дисплей
Мин үчүн жети сегменттүү дисплей
Мин үчүн жети сегменттүү дисплей
Мин үчүн жети сегменттүү дисплей
Мин үчүн жети сегменттүү дисплей
  1. Эң кичинекей бургу менен бургулоону колдонуу алдыңкы бетти бүтүндөй түзөт.
  2. 10 жогорку сапта жана 10 төмөнкү катарда.
  3. Ошентип, 2 жети сегменттүү дисплей оңой жылып кетет жана андан кийин аны оңдоо үчүн супер клейди колдонуңуз.
  4. Бул убакта биз бүт саат менен бүтүрдүк.
  5. Эми биз жети сегменттүү дисплейди орнотушубуз керек.

Эки жети сегменттүү дисплейдин казыктары.

static const uint8_t digital_pins = {2, 3, 4, 5, 6, 7, 8};

статикалык const uint8_t analog_pins = {A0, A1, A2, A3, A4, A5, 9};

Биринчи жети сегмент: диаграмманын a, b, c, d, e, f, g казыктары Arduino 2, 3, 4, 5, 6, 7, 8 казыктарына туташат.

2 -жети сегмент: диаграмманын a, b, c, d, e, f, g казыктары A0, A1, A2, A3, A4, A5, Arduino 9 казыктарына туташат.

Кодду иштетип, 9дан 0гө чейин же туура эмес экенин текшериңиз.

6 -кадам: Баарын чогултуу

Баарын чогулт
Баарын чогулт
Баарын чогулт
Баарын чогулт
  1. Баары чогулгандан кийин саат сүрөттөгүдөй болот.
  2. 12 сааттык кол серво үчүн пин.
  3. Кумдуу айнек серво үчүн пин 11.
  4. Башка казыктар жети сегменттүү казыктарга окшош.
  5. Программада төмөндөгү сандын маанилерин өзгөртүү менен убакытты коюңуз.

    • int hours = 1;
    • int мүнөт = 9;
    • int sec = 0;

Сунушталууда: