2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Instructable Vibrotactile Sensory Substitution and Augmentation Device (https://www.instructables.com/id/Vibrotactile-Sens…) ukazuje způsob, jak vybudovat zařízení, které převádí senzorický vstup na vibrační podněty. Tyto vibrační podněty produkují válcové motory ERM, které jsou poháněny Arduino Uno s motorovým štítem.
U více než 4 motorů je třeba skládat více štítů motoru.
V případě, že je třeba samostatně pohánět více než 6 motorů, potřebujete více pinů PWM, než má Arduino Uno (6 pinů PWM), a tedy Arduino Mega. Na Arduino lze teoreticky uložit více než dva štíty, ale vezměte v úvahu, že Arduino Mega má také pouze omezené množství pinů PWM: 15.
Zásoby
- Adafruit Motorshield v2.3 a stohovací záhlaví pro muže
- Ženské stohovací záhlaví (např.
- Arduino Mega pro více než 6 motorů (např.
Prototyp z
Krok 1: Pájení a stohování
- Pájecí stohovací kolíky na obou motorových štítech jsou vidět na obrázcích
- Pájecí propojky adres na jedné z desek (podrobnější pokyny k tomu viz vysvětlení na obrázku a
- Naskládejte Arduino a oba štíty na sebe.
- Ujistěte se, že propojka VIN je na obou stínech.
Krok 2: Kód
Toto je příklad, jak nechat 8 motorů překládat 3 smyslové hodnoty:
- Stáhněte si kód uvedený ve složce zip níže, otevřete jej a nainstalujte knihovny, jak je vysvětleno v ….
- Klikněte na Nástroje → Deska → vyberte Arduino/Genuino Mega nebo Mega 2505
- V případě potřeby změňte následující části v kódu
Definujte každý motor jeho číslem pinu a štítem:
Adafruit_DCMotor *motor1 = AFMS1.getMotor (1); // určete, že stejnosměrné motory připojené k prvnímu shieldAdafruit_DCMotor *motor2 = AFMS1.getMotor (2); Adafruit_DCMotor *motor3 = AFMS1.getMotor (3); Adafruit_DCMotor *motor4 = AFMS1.getMotor (4); Adafruit_DCMotor *motor5 = AFMS2.getMotor (1); // určete, že stejnosměrné motory připojené k druhému stínění Adafruit_DCMotor *motor6 = AFMS2.getMotor (2); Adafruit_DCMotor *motor7 = AFMS2.getMotor (3); Adafruit_DCMotor *motor8 = AFMS2.getMotor (4);
Specifikujte počet použitých motorů:
int nrOfMotors = 8;
Zahrnout všechny použité motory do pole:
Adafruit_DCMotor *motory [8] = {motor1, motor2, motor3, motor4, motor5, motor6, motor7, motor8, };
Zahrnout všechny senzory do pole:
pinů čidel bez znaménka [3] = {A15, A14, A13, };
Nahrajte kód do Arduino Mega. Hotovo.
Krok 3: Zajistěte, aby byl nositelný
V instruktáži o tom, jak zajistit nositelnost SSAD (https://www.instructables.com/id/Making-the-SSAD-W…), je uveden příklad, jak k tělu připojit Arduino Uno a jeden motorový štít. Pokud musíte používat Arduino Mega a více motorových štítů, může být řešením taška na nošení, jak je znázorněno na náčrtu.