Cuprins:

Photonics Challenger: POV volumetric 3D transparent (PHABLABS): 8 pași (cu imagini)
Photonics Challenger: POV volumetric 3D transparent (PHABLABS): 8 pași (cu imagini)

Video: Photonics Challenger: POV volumetric 3D transparent (PHABLABS): 8 pași (cu imagini)

Video: Photonics Challenger: POV volumetric 3D transparent (PHABLABS): 8 pași (cu imagini)
Video: When you switch your petrol scooter with an electric one 😂 2024, Iulie
Anonim
Image
Image
Photonics Challenger: POV volumetric 3D transparent (PHABLABS)
Photonics Challenger: POV volumetric 3D transparent (PHABLABS)
Photonics Challenger: POV volumetric 3D transparent (PHABLABS)
Photonics Challenger: POV volumetric 3D transparent (PHABLABS)

Cu câteva săptămâni în urmă am primit o invitație de ultim moment pentru a participa la un Hackathon PhabLabs la Science Center Delft din Olanda. Pentru un pasionat entuziast ca mine, care, în mod normal, poate petrece doar o cantitate limitată de timp în jocuri, am văzut acest lucru ca pe o oportunitate excelentă de a programa un timp dedicat pentru a transforma una dintre numeroasele mele idei, în cadrul Hackathon: Photonics, în un proiect propriu-zis. Și cu facilitățile excelente din Makerspace la Science Center Delft, a fost imposibil să respingem această invitație.

Una dintre ideile pe care le-am avut de ceva vreme legate de fotonică a fost că voiam să fac ceva cu Persistența viziunii (POV). Există deja o mulțime de exemple disponibile online despre cum să construiți un afișaj POV de bază folosind câteva componente de bază: microcontroler, ventilator vechi / hard disk / motor și un șir de leduri conectate perpendicular pe axa dispozitivului rotativ. Cu o configurare relativ simplă, puteți crea deja o imagine bidimensională impresionantă, de exemplu:

O altă variantă a afișajelor POV conectează un șir de leduri paralele cu axa dispozitivului rotativ. Acest lucru va avea ca rezultat un afișaj POV cilindric în 3 dimensiuni, de exemplu:

În loc să conectați șirul de leduri paralel cu axa dispozitivului rotativ, puteți arca și șirul de leduri. Acest lucru va avea ca rezultat un afișaj POV sferic (glob), de exemplu: https://www.instructables.com/id/POV-Globe-24bit-….. Iată câteva exemple de astfel de afișaje volumetrice POV 3D pe care le-am folosit ca inspirație pentru acest proiect specific:

  • https://www.instructables.com/id/PropHelix-3D-POV-…
  • https://github.com/mbjd/3DPOV
  • https://hackaday.io/project/159306-volumetric-pov-…
  • https://hackaday.com/2014/04/21/volumen-the-most-a…

Deoarece producătorii exemplelor de mai sus au furnizat informații foarte utile, a avut mult sens să remixăm părți din proiectele lor. Dar, deoarece un Hackathon ar trebui să fie o provocare, am decis, de asemenea, să construiesc un alt tip de afișaj volumetric POV 3D. Unii dintre ei foloseau rotoare și o mulțime de adeziv fierbinte pentru a împiedica componentele să zboare. Alții au creat PCB-uri personalizate pentru proiectul lor. După ce am analizat unele dintre celelalte proiecte 3D POV, am văzut loc pentru „inovație” sau am introdus câteva provocări pentru mine:

  • Fără experiență anterioară în crearea de PCB-uri personalizate și datorită constrângerii de timp a Hackathonului, am ales să urmez o abordare mai simplă a prototipului. Dar, în loc să creez rotoare reale, am fost curios cu privire la modul în care ar arăta un astfel de afișaj volumetric POV 3D atunci când se utilizează un cilindru construit din straturi de plastic acrilic.
  • Nu folosiți sau utilizați minim adezivul fierbinte pentru a face dispozitivul mai puțin periculos

Pasul 1: Material și instrumente utilizate

Material și instrumente utilizate
Material și instrumente utilizate

Pentru controlerul motorului

  • Arduino Pro Micro 5V / 16Mhz
  • Mică panou
  • 3144 Senzor comutator de efect Hall
  • Magnet cu diametru: 1cm, înălțime: 3mm
  • Comutator de comutare - MTS-102
  • Potențiometru 10K
  • Sârme jumper Dupont
  • 16 x nuci M5
  • Modul LCD cu iluminare de fundal albastră (HD44780 16 × 2 caractere)
  • 10K Rezistor - Rezistență Pull Up pentru senzorul de efect Hall
  • Rezistor 220 Ohm - Pentru controlul contrastului ecranului LCD
  • Diametrul filetului tijei: 5 mm
  • Placaj, Grosime: 3mm

Pentru baza platformei

  • Bucată de fier vechi (250 x 180 x 18 mm)
  • Mean Well - 12V 4.2A - Alimentare cu comutare LRS-50-12
  • Cablu de alimentare 220V
  • Convertor wireless DC-DC - 5V 2A (emițător)
  • Turnigy D2836 / 8 Motor 1100KV fără perii Outrunner
  • Controler de viteză Turnigy Plush 30amp W / BEC
  • Conectori pentru blocuri terminale
  • 12 x M6 Nuts pentru fixarea platformei folosind tijele filetate cu diametrul de 6mm.
  • 3 x șuruburi M2 (18 mm lungime) pentru fixarea adaptorului cu șuruburi la motorul fără perii
  • 4 x piulițe și șuruburi M3 pentru fixarea motorului fără perii pe bucata de fier vechi
  • Diametrul filetului tijei: 6 mm (4 x lungime 70 mm)
  • Diametrul filetului tijei: 4 mm (1 x lungime 80 mm)
  • Placaj, Grosime: 3mm

Pentru carcasa rotativă

  • Convertor wireless DC-DC - 5V 2A (receptor)
  • Adaptor cu șurub imprimat 3D (filament PLA, alb)
  • Teensy 3.6
  • IC 74AHCT125 Convertor / schimbător de nivel quad logic (3V la 5V)
  • 10K Rezistor - Rezistență Pull Up pentru senzorul de efect Hall
  • Condensator 1000uF 16V
  • Diametrul filetului tijei 4 mm
  • Magnet cu diametru: 1cm, înălțime: 3mm
  • Placaj, Grosime: 3mm
  • Placaj, Grosime: 2mm
  • Foaie acrilică, grosime: 2 mm
  • Diametrul tijei de oțel: 2 mm
  • Piulițe
  • Bandă led de 0,5 metri APA102C 144 leduri / metru

Instrumente utilizate

  • Merlin Laser Cutter M1300 - Placaj de tăiat cu laser și tablă acrilică
  • Ultimaker 2+ pentru imprimarea 3D a adaptorului Bolt On
  • Stație de lipit și lipit
  • Burghiu de masă
  • Șurubelnițe
  • Plyers
  • Ciocan
  • Subler
  • Ferăstrău
  • Chei
  • Tuburi termocontractabile

Software folosit

  • Fusion 360
  • Ultimaker Cura
  • Arduino IDE și Teensyduino (care conține Teensy Loader)

Pasul 2: Unitatea de control a motorului pentru a regla viteza de rotație

Unitate controler motor pentru reglarea vitezei de rotație
Unitate controler motor pentru reglarea vitezei de rotație
Unitate controler motor pentru reglarea vitezei de rotație
Unitate controler motor pentru reglarea vitezei de rotație
Unitate controler motor pentru reglarea vitezei de rotație
Unitate controler motor pentru reglarea vitezei de rotație

Unitatea de control a motorului trimite un semnal către controlerul electronic de viteză Turnigy (ESC) care va controla numărul de rotații furnizate de motorul fără perii.

În plus, am vrut să pot afișa rotațiile reale pe minut ale cilindrului POV. De aceea, am decis să includ un senzor de efect hall și un afișaj LCD de 16x2 la unitatea de control a motorului.

În fișierul zip atașat (MotorControl_Board.zip) veți găsi trei fișiere dxf care vă vor permite să tăiați cu laser o placă de bază și două plăci superioare pentru unitatea de control a motorului. Vă rugăm să folosiți placaj cu grosimea de 3 mm. Cele două plăci superioare pot fi așezate una peste alta, ceea ce vă va permite să înșurubați afișajul LCD de 16x2.

Cele două găuri din placa superioară sunt destinate pentru un comutator de pornire / oprire și un potențiometru pentru a controla viteza motorului fără perii (încă nu am conectat eu singur comutatorul de pornire / oprire). Pentru a construi unitatea de control a motorului, trebuie să tăiați tija filetată cu un diametru de 5 mm în 4 bucăți de înălțimea dorită. Folosind cele 8 piulițe M5 puteți fixa mai întâi baza. Apoi am atașat panoul mic la placa de bază folosind autocolantul adeziv pe două fețe care a fost furnizat împreună cu panoul. Schema atașată arată cum ar trebui să conectați componentele, astfel încât să poată funcționa cu codul sursă (MotorControl.ino) atașat la acest pas. Am folosit un rezistor de 10K pentru senzorul de hol. Un rezistor de 220 Ohm a funcționat suficient de bine pentru a face textul vizibil pe ecranul LCD.

Vă rugăm să vă asigurați că izolați pinii senzorului de efect de hol folosind tuburi termocontractabile, așa cum se arată în imagini. Funcționarea corectă a senzorului de hol se va baza pe un magnet care va fi plasat în carcasa rotativă la pasul 3.

Odată ce cablajul este finalizat, puteți fixa cele două plăci superioare cu afișajul LCD, comutatorul și potențiometrul folosind din nou 8 piulițe M5, așa cum se arată în imagini.

În așteptarea modelului motorului dvs. utilizat, poate fi necesar să reglați următoarea linie de cod din fișierul MotorControl.ino:

accelerație = hartă (ValoarePot medie, 0, 1020, 710, 900);

Această linie de cod (linia 176) mapează poziția potențiometrului de 10K la semnalul pentru ESC. ESC acceptă valoarea între 700 și 2000. Și pe măsură ce motorul pe care l-am folosit pentru acest proiect a început să se transforme în jurul valorii de 823, am limitat RPM-urile motorului limitând valoarea maximă la 900.

Pasul 3: Construirea platformei pentru puterea de transmisie fără fir

Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir
Construirea platformei pentru puterea de transmisie fără fir

În zilele noastre există practic două modalități de alimentare a dispozitivelor care trebuie să se rotească: inele de alunecare sau transmiterea energiei fără fir prin bobine de inducție. Deoarece inelele de alunecare de înaltă calitate, care pot suporta RPM mari, tind să fie foarte scumpe și mai predispuse la uzură, am optat pentru opțiunea wireless folosind un convertor DC-DC fără fir de 5V. Conform specificațiilor, ar trebui să fie posibil să se transfere până la 2 Amperi folosind un astfel de convertor.

Convertorul DC-DC fără fir constă din două componente, un transmițător și un receptor. Vă rugăm să rețineți că PCB-ul conectat la bobina de inducție de transmisie este mai mic decât cel care primește.

Platforma în sine este construită folosind o bucată de fier vechi (250 x 180 x 18 mm).

Pe platformă am înșurubat sursa de alimentare Mean Well 12V. Ieșirea de 12V este conectată la ESC (vezi schemele de la Pasul 1) și PCB-ul părții de transmisie a convertorului DC-DC fără fir.

În Platform_Files.zip atașat găsiți fișierele dxf pentru a tăia platforma din placaj cu grosimea de 3 mm:

  • Platform_001.dxf și Platform_002.dxf: trebuie să le așezați unul pe celălalt. Aceasta va crea o zonă încastrată pentru bobina de inducție de transmisie.
  • Magnet_Holder.dxf: Lasercut acest design de trei ori. Una dintre cele trei ori, include cercul. În celelalte două tăieturi lasere: îndepărtați cercul de la tăiere. După tăiere, lipiți cele trei piese împreună pentru a crea un suport pentru un magnet (diametru 10mm, grosime: 3mm). Am folosit superglue pentru a lipi magnetul din suportul Magnet. Vă rugăm să vă asigurați că lipiți partea corectă a magnetului pe suport, deoarece senzorul de hol va funcționa numai cu o parte a magnetului.
  • Platform_Sensor_Cover.dxf: Această piesă vă va ajuta să mențineți senzorul de hol atașat la unitatea de comandă a motorului, așa cum se arată în prima imagine.
  • Platform_Drill_Template.dxf: Am folosit această piesă ca șablon pentru găurirea găurilor din bucata de fier vechi. Cele patru găuri mai mari de 6 mm sunt pentru tijele filetate de susținere cu un diametru de 6 mm pentru a susține platforma. Cele 4 găuri mai mici sunt pentru fixarea motorului fără perii de bucata de fier vechi. Cea mai mare gaură din mijloc era necesară pentru axa care ieșea din motorul fără perii. Deoarece șuruburile pentru motor și tijele filetate pentru platformă trebuie să fie fixate pe fundul platformei, este necesar să măriți aceste găuri cu câțiva mm adâncime pentru a permite piulițelor să se potrivească.

Din păcate, arborele motorului fără perii a ieșit din partea „greșită” pentru acest proiect. Dar am reușit să inversez arborele cu ajutorul următoarei instrucțiuni pe care am găsit-o pe Youtube:

Odată ce motorul și tijele de susținere sunt fixate, platforma poate fi construită folosind piesele platformei lasercut. Platforma în sine poate fi securizată folosind 8 piulițe M6. Suportul magnetului poate fi lipit de platformă la margine așa cum se arată în prima imagine.

Fișierul atașat „Bolt-On Adapter.stl” poate fi tipărit folosind o imprimantă 3D. Acest adaptor este necesar pentru a atașa o tijă filetată cu un diametru de 4 mm la motorul fără perii folosind 3 șuruburi M2 cu o lungime de 18 mm.

Pasul 4: Carcasa rotativă

Carcasă rotativă
Carcasă rotativă
Carcasă rotativă
Carcasă rotativă
Carcasă rotativă
Carcasă rotativă

Fișierul Base_Case_Files.zip atașat conține fișierele dxf pentru a tăia cu laser cele 6 straturi pentru a construi carcasa pentru componentele care controlează banda LED APA102C.

Straturile 1-3 ale designului Casei sunt menite să fie lipite între ele. Dar vă rugăm să vă asigurați că un magnet (diametru 10 mm, înălțime: 3 mm) este introdus în decupajul circular din stratul 2 înainte de a lipi cele trei straturi împreună. De asemenea, asigurați-vă că magnetul este lipit cu polul corect în partea de jos, deoarece senzorul de efect de hol amplasat pe platforma construită în Pasul 3 va răspunde doar la o parte a magnetului.

Proiectarea carcasei conține compartimente pentru componentele enumerate în schemele de cablare atașate. IC 74AHCT125 este necesar pentru a converti semnalul de 3,3V de la Teensy la semnalul de 5V necesar pentru banda LED APA102. Straturile 4 și 5 pot fi, de asemenea, lipite împreună. Stratul superior 6 poate fi îngrămădit pe celelalte straturi. Toate straturile vor rămâne în poziția corectă cu ajutorul a 3 tije din oțel cu un diametru de 2mm. Există trei găuri mici pentru tijele de oțel de 2 mm care înconjoară orificiul mai mare pentru tija filetată rotativă de 4 mm atașată la motorul fără perii. Odată ce toate componentele sunt lipite conform schemei, carcasa completă poate fi pusă pe adaptorul cu șurub tipărit la Pasul 3. Vă rugăm să vă asigurați că orice fire deschise sunt izolate corespunzător folosind tuburi termocontractibile. Vă rugăm să rețineți că funcționarea corectă a senzorului de hol al acestor pași depinde de magnetul plasat în suportul magnet descris la pasul 3.

Dovada atașată a codului de concept 3D_POV_POC.ino va lumina unele leduri în roșu. Schița are ca rezultat afișarea unui pătrat odată ce cilindrul începe să se rotească. Dar înainte ca rotația să înceapă, ledurile care sunt necesare pentru a simula un pătrat sunt activate în mod implicit. Acest lucru este util pentru a testa funcționarea corectă a ledurilor în pasul următor.

Pasul 5: Rotirea cilindrului cu benzile led

Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led
Cilindru rotativ cu benzi led

Rotor_Cylinder_Files.zip atașat conține fișierele dxf pentru tăierea unei foi de acril de 2 mm grosime. Cele 14 discuri rezultate sunt necesare pentru a construi cilindrul transparent pentru acest proiect POV. Discurile trebuie să fie strânse unele pe altele. Designul discurilor cilindrice permite lipirea a 12 benzi de leduri ca o bandă de led lungă. Pornind de la discul unu, o bandă mică cu leduri care conține 6 leduri trebuie atașată la un disc folosind autocolantele adezive de pe banda led. Lipiți mai întâi firele pe banda LED înainte de a atașa benzile led pe disc folosind autocolante adezive. Altfel riscați ca pistolul de lipit să topească discul acrilic.

Odată ce discul # 13 este îngrămădit pe cilindrul transparent, tija de oțel de 2 mm folosită pentru a menține toate straturile în pozițiile corecte poate fi acum tăiată și la lungimea corectă, aliniată cu partea superioară a discului # 13 al cilindrului. Discul # 14 poate fi apoi utilizat pentru a menține tijele de oțel de 2 mm în poziție cu ajutorul a două piulițe M4.

Deoarece cantitatea de timp necesară pentru a construi întregul dispozitiv, nu am reușit să programez afișaje 3D mai stabile vizual interesante încă în intervalul de timp al hackathonului. Acesta este și motivul pentru care codul furnizat pentru controlul ledurilor este încă foarte de bază pentru a demonstra conceptul, prezentând doar un pătrat roșu 3 dimensional pentru moment.

Pasul 6: Lecții învățate

Teensy 3.6

  • Am comandat un Teensy 3.5 pentru acest proiect, dar furnizorul mi-a trimis un Teensy 3.6 din greșeală. În timp ce eram nerăbdător să termin proiectul în termenul hackathonului, am decis să merg mai departe cu Teensy 3.6. Motivul pentru care am vrut să folosesc Teensy 3.5 a fost din cauza porturilor, acestea sunt tolerante la 5V. Nu este cazul cu Teensy 3.6. Acesta este și motivul pentru care a trebuit să introduc un convertor logic bidirecțional în configurare. Cu un Teensy 3.5 acest lucru nu ar fi fost necesar.
  • Problemă Power Ramp Up: Când porniți dispozitivul, există o rampă de alimentare prin modulul de încărcare wireless dc-dc pentru a alimenta Teensy 3.6. Din păcate, rampa de urcare este prea lentă pentru ca Teensy 3.6 să pornească corect. Ca soluție, în prezent trebuie să pornesc Teensy 3.6 prin conexiunea micro USB și apoi să conectez sursa de alimentare de 12V care alimentează transmițătorul DC-DC wireless. Odată ce receptorul wireless dc-dc furnizează de asemenea energia Teensy, pot deconecta cablul USB. Oamenii și-au distribuit hack-ul cu un MIC803 pentru problema de creștere a puterii lente aici:

Modul ecran LCD

Comportament eratic la puterea externă. Ecranul funcționează corect când este alimentat prin USB. Dar când alimentez ecranul LCD prin intermediul panoului de calcul folosind 5V furnizat de BEC sau o sursă de alimentare independentă, textul începe să se amestece după câteva secunde după ce textul ar trebui să se schimbe. Încă trebuie să investighez ce cauzează această problemă

Mecanic

Pentru a testa unitatea de control a motorului pentru a măsura RPM-urile reale, am lăsat motorul să se rotească cu șurubul de pe adaptor, șurubul și carcasa de bază atașate la motor. În timpul uneia dintre testele inițiale, șuruburile care leagă suportul motorului de motor se deșurubează din cauza vibrațiilor. Din fericire am observat această problemă la timp, astfel încât un potențial dezastru a fost evitat. Am rezolvat această problemă prin înșurubarea șuruburilor puțin mai strânse la motor și, de asemenea, am folosit câteva picături de Loctite pentru a fixa șuruburile și mai mult

Software

Când exportați schițele Fusion 360 ca fișiere dxf pentru tăietorul laser, liniile de susținere sunt exportate ca linii obișnuite

Pasul 7: îmbunătățiri potențiale

Ce aș fi făcut în mod diferit pe baza experienței acumulate cu acest proiect:

  • Folosind o bandă de leduri care conține cel puțin 7 led-uri în loc de 6 led-uri pe strat pentru unele vizualizări textuale mai frumoase
  • Cumpărați un motor fără perii diferit, în care arborele iese deja pe partea corectă (de jos) a motorului. (de exemplu: https://hobbyking.com/de_de/ntm-prop-drive-28-36-1000kv-400w.html) Acest lucru vă va scuti de probleme fie să tăiați arborele, fie să împingeți arborele în partea corectă, ca și eu trebuia să fac acum.
  • Petreceți mai mult timp pentru echilibrarea dispozitivului pentru a minimiza vibrațiile, fie mecanice, fie modelate în Fusion 360.

De asemenea, m-am gândit la câteva potențiale îmbunătățiri, pe care aș putea să le analizez dacă timpul îmi permite:

  • Utilizarea efectivă a funcționalității cardului SD pe Teensy pentru a crea animații mai lungi
  • Creșteți densitatea imaginii utilizând leduri mai mici (APA102 (C) 2020). Când am început acest proiect în urmă cu câteva săptămâni, benzile cu leduri care conțin aceste leduri mici (2x2 mm) nu erau disponibile pe piață. Este posibil să le cumpărați ca componente SMD separate, dar aș lua în considerare această opțiune numai dacă sunteți dispus să lipiți aceste componente pe un PCB personalizat.
  • Transferați imagini 3D fără fir pe dispozitiv (Wifi sau Bluetooth). Acest lucru ar trebui, de asemenea, să permită programarea dispozitivului pentru a vizualiza sunetul / muzica.
  • Convertiți animațiile Blender într-un format de fișier care poate fi utilizat cu dispozitivul
  • Puneți toate benzile led pe placa de bază și concentrați lumina pe straturile de acril. Pe fiecare strat diferit pot fi gravate zone mici pentru a reflecta lumina atunci când sunt omise din leduri. Lumina ar trebui să fie focalizată pe zonele gravate. Acest lucru ar trebui să fie posibil prin crearea unui tunel care să ghideze lumina sau folosind lentile pe leduri pentru a focaliza lumina.
  • Îmbunătățirea stabilității afișajului volumetric 3D și reglarea vitezei de rotație prin separarea bazei de rotație de motorul fără perii utilizând roți dințate și o curea de distribuție.

Pasul 8: Strigați

Aș dori să mulțumesc în mod special următoarelor persoane:

  • Fantastica mea soție și fiice, pentru sprijin și înțelegere.
  • Teun Verkerk, pentru că m-a invitat la Hackathon
  • Nabi Kambiz, Nuriddin Kadouri și Aidan Wyber, pentru sprijin, asistență și îndrumare pe tot parcursul Hackaton
  • Luuk Meints, un artist și un coleg participant la acest Hackaton, care a fost atât de amabil să-mi dea un curs personal de introducere rapidă de 1 oră la Fusion 360, care mi-a permis să modelez toate părțile de care aveam nevoie pentru acest proiect.

Recomandat: