Мазмуну:
- 1 -кадам: Бөлүктөр, материалдар жана куралдар
- 2 -кадам: Circuit
- 3 -кадам: Машина жасоо (Механика жана Жыйын)
- 4 -кадам: Программалоо
- 5 -кадам: Машинанын иштеши
Video: SASSIE: Ыңгайсыз унчукпоо жана өз ара аракеттенүүнү күчөтүү системасы: 5 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:38
SASSIE - бул баарыбыздын жашообуздун бир учурундагы ыңгайсыз жымжырттык учурунда "кийинки мен сүйлөймбү?" Деген суроого жооп. Эми тынчсыздануунун кажети жок, анткени SASSIE ыңгайсыз жымжырттыкты таануу үчүн атайын иштелип чыккан, андан кийин ким кийинки сүйлөө керектигин туш келди чечүү менен аны нейтралдаштырат. Эми сиз SASSIE сиздин аркаңызда экенин билип, стресссиз сүйлөшүүгө кире аласыз.
1 -кадам: Бөлүктөр, материалдар жана куралдар
Arduino Parts
2 X Arduino Uno R3
2 X Arduino микрофону
1 X XBee Wireless SD Shield
1 X 1/2 w 8 Volt Speaker
1 X жарым өлчөмдөгү нан тактасы
1 X Arduino Stepper мотору
1X ULN 2003 Stepper Motor Drive Board
1 X Micro Servo
Негизги жана турак жай (лазердик кесүү компоненттери)
Төмөндө саналып өткөн бардык компоненттерди бирч плайдын кесилишинде лазер менен кессе болот (32 "X 18")
1 - Негизги
1 X Астыңкы Плитасы
1 X Узун узундугу Кыска Бийиктикте Тор торчосу
1 X Top Base Plate
4 X Кыска Length Tall Height Түз тор каптал Strip Base
2 - Негизги
1 X Step Motor кир жуугуч
1 X Төмөнкү Негизги Табак
1 X Орточо узундугу Орточо бийиктиги Түз торчо тилкеси
1 X Жогорку Негизги Ринг
1 X Кыска Length Tall Height Түз тор каптал Strip
1 X Top Side Strip Plate
1 X Small тик бурчтуу табак (Micro Servo үчүн)
3 - Микрофондун стенди
4 X базалык табак
1 X 13 см 3/16 Дубель (капталында 30 градус)
1 X Small тик бурчтуу табак (Микрофон үчүн)
2 -кадам: Circuit
3 -кадам: Машина жасоо (Механика жана Жыйын)
1_Алдынкы Ассамблея
- (Милдеттүү эмес) Кайыңдын бардык компоненттерин таза кылып бүтүрүңүз
- Кайыңдын катмарын толугу менен нымдап, анан ийилип тегерек форманы түзүңүз.
- Дөңгөлөктүү форманы кармоо үчүн маска лентасын колдонуп, кайыңдын катмарынын тилкесин ороп алыңыз
- Тасма тегерек формасын сактап калуусу үчүн ал түнү бою отурсун
2_Үй жыйыны
Негизги
- Негизги Плитаны Негизги Териге Клей
- Төмөнкү капталдагы төрт плитаны жабыштырып, анан ошол бөлүктү үстүңкү плитанын четине чаптаңыз
- Stepper моторун Жогорку базалык плитанын ортосуна скотч менен жабыңыз (Side Strip Plate менен бир жагын таптап, мотордун чыныгы айлануучу бөлүгүн машинанын ортосуна тууралаңыз)
- Stepper Motor шайбасын Stepper Motorго киргизиңиз
Негизги
- Негизги Плитаны Негизги Териге Клей
- Негизги Теринин Шакегин Негизги Теринин үстүнө чаптаңыз
- каптал тилкесин үстүңкү каптал тилкесине салыңыз
- Серво моторунун плитасын үстүңкү каптал тилкесине перпендикуляр чаптаңыз
3_Ассамблея
- Этияттык менен нан жана эки UNO R3 менен SD Shield базалык урнанын ичине коюңуз
- Үстүнкү Плитаны таштанды челегине койгула жана бардык сенсорлор менен Актуаторлордун үстүңкү пластинанын тешиктеринен өтүшүн текшериңиз
- Stepper моторун Жогорку базалык плитанын ортосуна скотч менен жабыңыз (Side Strip Plate менен бир жагын таптап, мотордун чыныгы айлануучу бөлүгүн машинанын ортосуна тууралаңыз)
- Stepper Motor шайбасын Step моторуна салыңыз
- Негизги компонентти шайбага коюңуз
- Каптал тилкесинин компонентин каптал тилкесинин базалык слайдына бекиңиз
- Серво моторун жогорку четиндеги Servo Motor Plate капталына скотч менен (капталга чапташ керек), андан кийин servo зымдарын каптал тилкесинин ичине таптаңыз
- Серво моторуна жогорку белгини тагыңыз
- Негизги теридеги каптал белгини басыңыз
4_Микрофондун стенд жыйнагы
- Төрт базаны бириктирип чаптаңыз
- Дубелдин жалпак тарабын негизге чаптаңыз
- Микрофондун пластинасын дубелдин бурчтуу жагына чаптаңыз
- микрофонду микрофондун пластинкасына чаптаңыз
4 -кадам: Программалоо
Arduino Uno тактасынын көлөмү чектелүү болгондуктан, бул долбоордо эки Arduino тактасы колдонулат. Негизги такта көпчүлүк функциялар үчүн колдонулат, анын ичинде жымжырттыктын убактысын эсептөө, үн маалыматын иштетүү, колдонуучулар менен сүйлөшүү жана экинчи такта менен баарлашуу.
#кошуу #кошуу
#кошуу
#кошуу
// SD 11, 12, 13. пинге туташышы керек
// талап кылынат же SD.begin () менен чакырылат.
const int servoPin = 3;
const int micPin1 = 5; const int micPin2 = 6; const int AWKS = 4;
int volume1;
int volume2; float silenceTime = 0;
Servo баннер;
TMRpcm plr;
жараксыз орнотуу () {
// орнотуу кодуңузду бул жерге коюңуз, бир жолу иштетүү үчүн: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("SASSIE диагностикалык порталына кош келиңиз."); banner.attach (servoPin); banner.write (0); if (! SD.begin (10)) {Serial.println ("SD fail"); } plr.speakerPin = 9; plr.setVolume (5); }
void loop () {
көлөм1 = digitalRead (micPin1); көлөм2 = digitalRead (micPin2); banner.write (0); if (volume1 == 0 and volume2 == 0) {silenceTime += 0,05; Serial.print ("Тынчтык убактысы:"); Serial.println (silenceTime); } else {silenceTime = 0; banner.write (0); } кечиктирүү (50); if (silenceTime> = AWKS) {куткаруу (); silenceTime = 0; }}
боштук куткаруу () {
үчүн (int бурчу = 0; бурч <90; бурч += 1) {banner.write (бурч); кечигүү (35); } Serial.println ("Banner on"); кечиктирүү (100); Serial.write (1); Serial.println ("Ыр күйгүзүлгөн"); plr.play ("4.wav"); кечигүү (10000); plr.stopPlayback (); loop (); кечигүү (10000); кечигүү (5000); plr.play ("2.wav"); кечигүү (5000); plr.play ("3.wav"); }
Экинчи тактанын коду жөнөкөй. Негизги такта ага сигнал жөнөткөндө, ал тепкич моторун гана айдайт.
#кошуу
const int stepPin1 = 8;
const int stepPin2 = 9; const int stepPin3 = 10; const int stepPin4 = 11; const int motorSteps = 200;
bool motorState = false;
Stepper мотору (мотор кадамдары, stepPin1, stepPin2, stepPin3, stepPin4);
жараксыз орнотуу () {
// орнотуу кодуңузду бул жерге коюңуз, бир жолу иштетүү үчүн: stepMotor.setSpeed (75); }
void loop () {
// кайра иштетүү үчүн негизги кодуңузду бул жерге коюңуз: int incoming = Serial.read (); эгер (кирүүчү == 1) {Serial.println ("активдештирилген"); if (motorState == 0) {stepMotor.step (1000); кечигүү (5000); } else {stepMotor.step (-1000); } motorState =! motorState; } кечигүү (500); }
Сунушталууда:
Негизги электрокардиограмманы алуу, күчөтүү жана чыпкалоо схемасы: 6 кадам
Негизги электрокардиограмманын схемасын алуу, күчөтүү жана чыпкалоо: Бул көрсөтмөнү аягына чыгаруу үчүн компьютер, интернетке кирүү жана кээ бир симуляциялык программалар керек. Бул дизайн үчүн бардык схемалар жана симуляциялар LTspice XVIIде иштейт. Бул симуляциялык программалык камсыздоодо
Автоматташтырылган ЭКГ: LTspiceти колдонуу менен күчөтүү жана чыпкалоо симуляциялары: 5 кадам
Автоматташтырылган ЭКГ: Күчөтүү жана LTspiceти колдонуп чыпкалоо симуляциялары: Бул сиз кура турган акыркы түзмөктүн сүрөтү жана ар бир бөлүк жөнүндө абдан терең талкуу. Ошондой эле ар бир этап үчүн эсептөөлөрдү сүрөттөйт. Сүрөт бул түзмөктүн блок -схемасын көрсөтөт Методдору жана материалдары: Бул пр
Музыканын өз ара аракеттенүүчү бөтөлкө стенди: жөнгө салынуучу жарыктар менен: 14 кадам
Музыканын бөтөлкө менен жөнгө салынуучу стенддери: Бир нече убакыт мурун, менин бир досум 16 Бит LED-шакегине заказ кылды жана ошону менен бирге анын үстүнө бөтөлкө коюу идеясын алды. Мен муну көргөндө, колбаны күйгүзгөн жарыктын көрүнүшүнө суктанып, укмуштуудай нерселерди эстедим
Alexa менен Dragonboard-410c менен кантип өз ара аракеттенсе болот: 5 кадам
Alexa менен Dragonboard-410c менен кантип өз ара аракеттенүү керек: Бул окуу куралы менен Alexaны Dragonboard-410cке кантип киргизүүнү үйрөнөсүз. Баштоодон мурун, сизге керектүү нерселерди киргизели: Alexa Voice Service (AVS) - Түзмөгүңүз менен сүйлөшүүгө мүмкүндүк берет, сиз булутка негизделген alexa аркылуу кире аласыз
Физикалык өз ара аракеттенүү системасы - PlateaPlayer: 19 кадам (сүрөттөр менен)
Физикалык өз ара аракеттенүү тутуму - PlateaPlayer: Бул долбоор видеого багытталган интерактивдүү видео ойноткучтун физикалык эсептөө өз ара аракеттешүүсүнүн аппараттык аткарылышын иштеп чыгуу жана иштеп чыгуу процессин сүрөттөйт; Universidad Aut & oacute студенттеринин санариптик телеберүүсү