Operácie

Steering wheel cleaner

Z SensorWiki

Verzia z 20:04, 5. jún 2019, ktorú vytvoril StudentDTV (diskusia | príspevky) (Aktuálne riešenie)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Autor: Marek Trebuľa
Študijný odbor: Robotika a kybernetika 3. Bc. (2019)

Opis projektu

Cieľom projektu je navrhnúť mechanický a elektronický systém pre pohon čistiaceho mechanizmu automobilového volantu.

Vizualizácia volantu s automatickým čistením

Prečo?

Budúcnosť automobilizmu o 20 - 30 rokov predpokladá, že autá budú zdieľané, bude fungovať tzv. "carsharing". Tu nastáva otázka čo s hygienou týchto vozidiel. Hygiena volantu je dôležitá, keďže s ním budú prichádzať ľudia do kontaku pri každej jazde.

Potrebný materiál

Na zostrojenie prototypu pohonného systému pre čistič volantu budete potrebovať:

Reťazová zostava
Použitý spínač
  1. Arduino Nano
  2. Kontaktné pole
  3. 2x spínač
  4. RGB diódu
  5. Guličkové ložiská 4x12x4mm
  6. Valčekovú reťaz 04A-1
  7. 2x reťazová spojka 04A-1
  8. Reťazové koleso 04A-1
  9. Motor s prevodovkou
  10. Napájací zdroj 12V
  11. Rezistory
  12. Tranzistor
  13. Prepojovacie vodiče
  14. Tyč s priemerom 4mm
  15. Skrutky a matice











Návod na výrobu

Príprava materálu

Prototyp sa skladá z niekoľkých väčších celkov, ktoré bolo potrebné vyrobiť pred kompletizáciou.

  • 2x maketa volantu vyfrézovaná CNC frézou z MDF dosky hrubej 8mm. Do tejto makety sa budú neskôr osádzať vodiace valčeky a tiež bude o nu priprevnený hnací motor na španovacom mechanizme.
  • Na lasery bolo vyzrezané uchytenie motora z preglejky 5mm hrubej.
Lasercut.PNG
  • Vodiace valčeky boli vytlačené 3D tlačou.
Valcek.PNG
  • Reťazové koleso prenášajúce moment motora na reťaz bolo vytlačené 3D tlačou.
Kolečko.PNG
  • Z mosadznej tyčky o priemere 4mm boli vyrobené osky pre vodiace valčeky, ktoré spolu s oskami budú osadené v ložiskách. Dĺžka osky je 22mm.

Postup

  1. Do oboch makiet boli vhodne zavŕtané osadenia pre ložiská. Vonkajší priemer ložiska je 12mm preto aj tieto zapustenia boli vŕtané vrtákom hrúbky 12mm. Ďalej boli vyvŕtané otvory pre uchytenie španovacieho systému reťaze, ktorého súčasťou je aj motor s prevodovkou.
Zapustenie.png
  1. Na mosadzné osky boli osadené vodiace valčeky spolu s ložiskami.
Loziskoplusvalcek.png
  1. Motor s prevodovkou bol uchytený do španovacieho úchytu.
Spanovak.png
  1. Na výstupný hriadeľ prevodovky bolo nasadené reťazové koleso.(Pozn.: ak kúpite reťazové koleso bez závitu na zaisťovací šrób je potrebné navŕtať a vyrezať závit do náboja reťazového kolesa)
  2. Následne motor + prevodovka + španovací úchyt + reťazové koleso bolo primontované na maketu. Španovací systém bol nastavený tak, aby pri zakladaní reťaze bol čo najvolnejší.
  3. Do makety boli vložené ložiská spolu s vodiacimi valčekmi.
  4. Bola zmeraná potrebná dĺžka valčekovej reťaze a tá bola následne upravená na požadovanú dĺžku.
Mechanizmuskomplet.png
  1. Po založení reťaze je možné priložiť k valčekom z druhej strany druhý kus makety a celý volant spojiť dokopy šróbami.
Set.png
  1. Posledný krok čo sa mechanickej časti týka je došpanovanie reťaze.
  2. Na záver urobiť elektrické zapojenie podľa schémy.
Electric.jpg

Analýza

V tejto časti sú rozanalyzované jednotlivé diely a uvedené technické údaje, prípadne priložené .stl súbory.

DC motor

Úchyt motora
Vodiaci valček
Hnacie koliesko

Elektromotor s prevodovkou sú svalmi čistiaceho systému. Dôležité bolo zabezpečiť dostatočne silný pohon, aby bol schopný prekonať pôsobiace trenie v systéme. Trecia sila tu zoháva významnú úlohu, keďže pri slabom dotyku čistiaceho bežca s volantom by volant nemusel byť dostatočne vyčistený a naopak pri veľmi silnom dotyku s volantom by s ním motor nemusel ani pohnúť. Na nasledujúcom obrázku je zobrazený motor spolu s technickými parametrami.

TechParamMotor.png

Napájací zdroj

Celý pohonný systém je napájaný zdrojom jednosmerného napätia. Parametre zdroja vidno na obrázku nižsie.

ZdrojParam.png
]

Dôležité súbory

Popis riešenia

Koncept

Predpokladá sa, že budúcnosťou automobilizmu sú zdieľané vozidlá. Teda nebude mať, každý vlastné auto, ale autá sa búdu akoby požičiavať. Tu nastáva otázka ako auto udržať čisté s pravidelným zásahom človeka po každom použití. Jedným z prvkov, ktoré by mohli byť odpoveďou na túto otázku je aj samočistiaci volant. Koncept volantu a celého projektu spočíva v automobile, ktorý sa po opustení vozidla vyčistí sám. Takéto vozidlo by malo obsahovať prostriedky a systémy, ktoré po každom užívateľovi uvedú auto do hygienického stavu.

Aktuálne riešenie

Momentálne riešenie je vybavané tlačidlom, ktoré simuluje pokyn na začatie čistenia. Po tom ako arduino obdrží tento pokyn rozbliká sa varovná ledka a po chvíli sa rozpohybuje čistiaci bežec. Po urobení prejdení celého obvodu volantu sa bežec zastaví v pôvodnej polohe. Následne sa rozbliká ledka a potom sa rozsvieti na zeleno v tom momente je čistenie ukončené. A zároveň volant je pripravený na bežné používanie alebo ďalšie čistenie.

Počas testovania sa ukázalo, že hnacie koliesko vytačené 3D tlačou nevydrží záťaž a pretočilo sa na hriadeli motora. Preto bolo nahradené kovovým.

Toto riešenie je príprava na výsledný produkt, ktorého vizualizáciu môžeme vidieť v gife na konci tejto dokumentáce. V záverčenej fáze bude tlačidlo simulujúce udaloať na začatie čistenia nahradené iným spôsobom, ktorý vygeneruje príkaz pre zahájenie čistenia. V praxi by to mohol byť senzor v sedadle, ktorý by dal vedieť systému, že šofér opustil auto a môže sa zahájiť čistenie.

Zapojenie

Zapojenie celého systému je znázornené na obrázku nižšie. Pre ilustráciu sú v obtázku použité tlačidlá, ktoé boli k dispozícií v programe an tvorbu schém. Reálne bolo použité Arduino Nano a aj iné tlačidlá. Je ľubovolné ako si zvoliíme piny pre jednotlivé tlačidlá a farby RGB diódy je dôležité zohladniť to v zdrojovom kóde. Rovnako aj napájanie bolo realizované sieťovým zdrojom napätia nie 9V batériov ako je v obrázku.

Scheme.PNG

Algoritmus a program

V nasledujúcej časti vidíme zdrojový kód čistiaceho systému volantu. Volant sa môže nachádzať v dvoch stavoch:

  1. Keď je čistí, teda čistiaci bežec je v pohybe.
  2. Keď je v stave šoférovania, teda bežec je v pokoji

Prechody medzi stavmi sú sprevádzané blikaním RGB ledky.

/******* definovanie pinov *******/

const int motorPin=2;
const int greenPin=6;
const int bluePin=7;
const int redPin=8;
const int eventPin=10;   /* pin sledujúci udalosť pri ktorej sa spustí čistenie */
const int polohaPin=9;   /* pin sledujúci polohu čistiaceho bežca, keď je v pôvodnej polohe zastaví sa motor */


/******* pomocná premenná definujúca stav volantu *******/
bool motorIsRunning=false;

void setup() {
  
  Serial.begin(9600);
  
  pinMode(motorPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin,  OUTPUT);
  pinMode(redPin,   OUTPUT);
  pinMode(eventPin,  INPUT);
  pinMode(polohaPin, INPUT);
  
  digitalWrite(greenPin,HIGH);  

}

void loop() {

  if(!motorIsRunning){
     if(digitalRead(eventPin)){
       startCleaning();
       motorIsRunning=true;    
      }
    
  }
  if(motorIsRunning){
   // Serial.println(digitalRead(polohaPin));
    if(digitalRead(polohaPin)){
      stopCleaning();
      motorIsRunning=false;    
    }
  }
  

}

/******** Funkcia sa zavolá v stave ked je vypnutý motor a rozbehne ho **********/
void startCleaning(){
  for(int i=1;i<5;i++){
    blinkYellow();
    }
    digitalWrite(redPin,HIGH);
    delay(1000);
    digitalWrite(motorPin,HIGH);
    delay(1000); 
    
  }
/******** Funkcia sa zavolá v stave ked motor beží a vypne ho **********/
void stopCleaning(){
  digitalWrite(motorPin,LOW);
    for(int i=1;i<5;i++){
    blinkRed();
    }
  digitalWrite(redPin,  LOW);
  delay(500);
  digitalWrite(greenPin,HIGH);  
  }
/***** Funkcia pre blikanie žltou farbou **********/
void blinkYellow(){
  digitalWrite(greenPin,HIGH);
  digitalWrite(redPin,  HIGH);
  delay(400);
  digitalWrite(greenPin,LOW);
  digitalWrite(redPin,  LOW);
  delay(400);  
  }
/***** Funkcia pre blikanie červenou farbou **********/
void blinkRed(){
  digitalWrite(redPin,  LOW);
  delay(400);
  digitalWrite(redPin,  HIGH);
  delay(400);  
  
}


Zdrojový kód: SteeringWheelCleaner.ino

Výsledok

Výsledný mechanizmus, ktorý bol vytvorený v tomto projekte bude v ďalšej fáze implementovaný do reálneho volantu, ktorý by sa mal podobať volantu na animácii. Pred tým však, bude znížená hlučnosť mechanizmu, použitím vodiacich ozubených koliesok namiesto valčekov. Tie budú podobne ako valčeky vytlačené na 3D tlači. K reťazi bude čistiaci bežec pripojený pružinovým systémom, ktorý doposiaľ nebol otestovaný.

Výsledný mechanizmus:

Mechanizmuskomplet.png

Video funkčného systému:

Cast1.gif
Cast2.gif

Plánovaný výsledok:

Gifvol.gif