Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Przez Yue, Yanana i Hao.
Projekt realizowany w ramach seminarium Computational Design and Digital Fabrication w programie magisterskim ITECH.
Niektórzy z nas przez cały czas nieświadomie potrząsają nogami. Gdy masz telefon komórkowy w kieszeni, te przypadkowe ruchy są wykrywane przez zinternalizowany „akcelerometr”. Za pośrednictwem bluetootha odsyłającego do naszej małej maszyny, uruchamiana jest mechaniczna pętla prostego układu zębatkowo-łańcuchowego, w którym sługa zawieszony jest na serwomechanizmie. Stronnik zostanie przeniesiony wraz z łańcuchem i upuszczony na końcu. Chociaż nawet nie zauważasz, co robisz, R. I. P. Sługus!
Krok 1: Lista przedmiotów
Lista rzeczy:
Elementy druku 3D:
Platforma (siedzenie serwomechanizmu, łącznik łańcucha, przekładnia)
Minion i trumna
Arduino:
Płyta kontrolera UNO R3
Płytka stykowa 830 szpilek
Silnik krokowy (28BYJ48 5V DC)
UNL2003 płyta sterownika silnika krokowego
Siłownik
Odbiornik Bluetooth
Brzęczyk piezoelektryczny
Bateria 9V z prądem stałym
9V adapter baterii
Rezystor 330R lub wyższy *2
LED *2
Przewody połączeniowe
Inni
Drewniane kije 4mm (ruchome gąsienice)
Łańcuch (łza z samochodu Logo)
Śruby i wkrętaki M3
Telefon komórkowy (Android)
Krok 2: Złóż platformę
Silnik krokowy i silnik serwo są częścią obwodu sterującego. Silnik serwo jest podłączony bezpośrednio do płytki stykowej 830 i płyty sterującej Uno R3, podczas gdy silnik krokowy musi najpierw połączyć się z płytą sterowniczą silnika krokowego UNL2003, a następnie połączyć się z płytą sterującą Uno R3.
Krok 3: Obwody i kody
Aby kontrolować ruchy łańcucha, brane są pod uwagę następujące podstawowe stany:
0 Zainstaluj aplikację i połącz ją z maszyną przez bluetooth. I zacznij się trząść!
1. po otrzymaniu sygnałów koła zębate zaczęły się obracać, a łańcuch zaczął się poruszać z określoną prędkością.
2. Sygnały są kontynuowane, aż stworek zostanie przeniesiony na drugi koniec ścieżki, wtedy silnik krokowy zatrzymuje się, a serwomotor obraca się o 90 stopni i wrzuca stwora do trumny.
3. Podczas chodzenia łańcuchem, jeśli sygnały zatrzymają się na identyczny czas, biegi cofają się, a łańcuch cofa się z bardzo małą prędkością.
4. przez zresetowanie dołu na płycie sterującej Uno R3 lub jeśli odwrócony ruch dotknie początkowy koniec ścieżki, procedura zostanie zresetowana.
5. Aby było trochę ciekawiej, podczas przesuwania i upuszczania słychać odgłosy. Możesz także rozszerzyć moduł dźwięku i muzyki o aplikacje w telefonie. Baw się z tym.
#include #include #include #include "pitches.h"
const int krok = 64;
const int counterMax = step * 9; int licznik = 0;
SoftwareSerial mySerial(7, 8);
Stepper stepper (krok, 9, 11, 10, 12); Servo myServo;
const int Brzęczyk = 5;
bool isAlive = prawda;
dane znakowe;
int melodia = {
NOTE_CS4, NOTE_CS4, NOTE_CS4, NOTE_CS4, NOTE_CS4, 0, NOTE_CS4, NOTE_CS4, NOTE_CS4, 0, NOTE_CS4 }; int noteCzas trwania = { 2, 2, 2, 2, 8, 8, 8, 8, 8, 8, 8 };
pusta konfiguracja () {
Serial.początek(9600); mójSerial.początek(9600); mojeSerwo.attach(3); pinMode(4, WEJŚCIE); stepper.setSpeed(80);
while (digitalRead(4) == LOW) {
krok.krok(-1); } krok.krok(60); }
pusta pętla () {
if (mySerial.available() > 0) { while (mySerial.available() > 0){ data = mySerial.read(); } if (licznik < licznikMax) { mySerial.print("0"); for (int thisNote = 0; thisNote = counterMax && isAlive) { mySerial.print("2"); mojeSerwo.write(180); for (int taUwaga = 0; taUwaga 1 && licznik < counterMax) { mySerial.print("1"); krok.krok(-1); licznik -= 1; opóźnienie(200); } }
Krok 4: Przebieg testowy
Krok 5: Wszystkie pliki, które możemy udostępniać
Możesz znaleźć wszystkie pliki, które możemy udostępnić w tym łączu, w tym modele 3d-print, fritzujące schematy obwodów i kody arduino.
drive.google.com/open?id=1qImULCJQRdzlon4s…