Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Instructable Vibrotactile Sensory Substitution and Augmentation Device (https://www.instructables.com/id/Vibrotactile-Sens…) pokazuje, jak zbudować urządzenie, które przekształca bodźce czuciowe na bodźce wibracyjne. Te bodźce wibracyjne są wytwarzane przez cylindryczne silniki ERM, które są napędzane przez Arduino Uno z osłoną silnika.
W przypadku więcej niż 4 silników należy ułożyć kilka osłon silnika.
W przypadku, gdy więcej niż 6 silników musi być niezależnie napędzanych, potrzebujesz więcej pinów PWM niż ma Arduino Uno (6 pinów PWM), a zatem Arduino Mega. Teoretycznie na Arduino można umieścić więcej niż dwie tarcze, jednak należy wziąć pod uwagę, że Arduino Mega ma również ograniczoną liczbę pinów PWM: 15.
Kieszonkowe dzieci
- Adafruit Motorshield v2.3 i męskie nagłówki do układania w stos
- Nagłówki żeńskie do układania w stosy (np.
- Arduino Mega dla ponad 6 silników (np.
Prototyp z
Krok 1: Lutowanie i układanie
- Przylutuj kołki do układania na obu osłonach silnika, jak widać na zdjęciach
- Przylutuj zworki adresowe na jednej z płytek (patrz objaśnienie na zdjęciu i https://learn.adafruit.com/adafruit-motor-shield-… aby uzyskać bardziej szczegółowe instrukcje)
- Ułóż Arduino i obie tarcze jeden na drugim.
- Upewnij się, że zworka VIN znajduje się na obu osłonach.
Krok 2: Kod
Oto przykład, jak pozwolić 8 silnikom przetłumaczyć 3 wartości sensoryczne:
- Pobierz kod dostarczony w folderze zip poniżej, otwórz go i zainstaluj biblioteki, jak wyjaśniono w ….
- Kliknij Narzędzia → Płytka → wybierz Arduino/Genuino Mega lub Mega 2505
- W razie potrzeby zmień następujące części w kodzie
Zdefiniuj każdy silnik za pomocą numeru pinu i osłony:
Adafruit_DCMotor *silnik1 = AFMS1.getMotor(1); // określ, że silniki prądu stałego podłączone do pierwszego shieldAdafruit_DCMotor *motor2 = AFMS1.getMotor(2); Adafruit_DCMotor *silnik3 = AFMS1.getMotor(3); Adafruit_DCMotor *silnik4 = AFMS1.getMotor(4); Adafruit_DCMotor *silnik5 = AFMS2.getMotor(1); // określ, że silniki prądu stałego podłączone do drugiej osłony Adafruit_DCMotor *motor6 = AFMS2.getMotor(2); Adafruit_DCMotor *silnik7 = AFMS2.getMotor(3); Adafruit_DCMotor *silnik8 = AFMS2.getMotor(4);
Określ liczbę używanych silników:
int nrOfMotors = 8;
Uwzględnij wszystkie używane silniki w tablicy:
Adafruit_DCMotor *silniki[8] = {silnik1, motor2, motor3, motor4, motor5, motor6, motor7, motor8, };
Uwzględnij wszystkie piny czujników w tablicy:
piny czujników bez znaku [3] = { A15, A14, A13, };
Prześlij kod do Arduino Mega. Gotowe.
Krok 3: Spraw, aby był nadający się do noszenia
W Instructable o tym, jak sprawić, by SSAD można było nosić (https://www.instructables.com/id/Making-the-SSAD-W…), podano przykład mocowania Arduino Uno i jednej osłony silnika do ciała. Jeśli musisz użyć Arduino Mega i wielu osłon samochodowych, torba na biodra, jak pokazano na szkicu, może być rozwiązaniem, które sprawi, że prototyp będzie nadający się do noszenia.