Orodha ya maudhui:
- Hatua ya 1: Dhana ya Wazo
- Hatua ya 2: Orodha ya Vifaa
- Hatua ya 3: Zana
- Hatua ya 4: Kufanya Sura
- Hatua ya 5: Kuchora Picha za mwisho na Dhana
- Hatua ya 6: Tengeneza Kusonga kwa Picha
- Hatua ya 7: Kuandaa Programu
- Hatua ya 8: Kutengeneza Ugavi wa Umeme wa Vifaa
- Hatua ya 9: Kufanya vifaa vya I / O na kuangalia OUTPUT (NeoPixel Working)
- Hatua ya 10: Kukusanyika na Kuambatanisha na Gurudumu
- Hatua ya 11: Kuangalia Pembejeo (Takwimu za Sura za SURA)
- Hatua ya 12: Algorithm ya Usimbuaji
- Hatua ya 13: Kutumia Programu
- Hatua ya 14: Kamilisha
Video: Maonyesho ya Digilog_Bike POV: Hatua 14
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:50
Digilog
Digital + Analog
Digital hukutana na analog
POV
Mtazamo wa Kuonekana
Pia inajulikana kama onyesho la baada ya siku, ikiwa linatikiswa kwa mwendo wa kasi, picha ya baadaye inabaki.
Watu wanadhani wanaangalia video wakati wanaangalia TV. Lakini kwa kweli, anaangalia picha kadhaa mfululizo. Hii ni makosa kwa picha kwa sababu ya athari za baadaye zinazobaki kwenye retina zetu wakati wa kutazama picha mfululizo. Aina hii ya udanganyifu inaitwa POV.
Hatua ya 1: Dhana ya Wazo
POV inatekelezwa kwa kuambatisha kamba ya LED kwenye gurudumu la baiskeli.
Hatua ya 2: Orodha ya Vifaa
Kompyuta na I / O
1. Arduino Mega 2560 [arduino] x3
2. Moduli ya sensa ya ukumbi V2 [YwRobot] x3
3. WS2812-5050 Neopixel inayobadilika [Adafruit] x3
4. Magnetic (kipenyo cha 15mm, unene wa 50mm) x3
5. Kesi ya Mega ya Arduino x3
Njia ya Nguvu
5. 5000mAh / 3.7V Lithium Battery [TheHan] x3
6. Mdhibiti wa AVR 5V & kuchaji na moduli ya PCM: JBATT-U5-LC [Jcnet] x3
7. 4Kiti ya waya ya juu 65PCS / SET [OR0012] x3
Hatua ya 3: Zana
Sio vifaa vingi sana vinavyohitajika hata hivyo utahitaji:
1. Mashine ya Soldering
2. Chuma cha Soldering
3. Bunduki ya gundi
4. Nipper
Hatua ya 4: Kufanya Sura
Kukata Baiskeli na Kuunganisha Msingi
Grinder ilitumika kukata magurudumu ya baiskeli mbali ya baiskeli na svetsade sahani za chuma ili kupata magurudumu.
Hatua ya 5: Kuchora Picha za mwisho na Dhana
Tulichagua joka kama picha ya mwisho. Kwa sababu wimbi la joka lilionekana kuwa linawakilishwa vyema na athari ya baadaye.
Hatua ya 6: Tengeneza Kusonga kwa Picha
Gawanya picha hiyo katika sehemu tatu ambazo zitatoshea kwenye kila baiskeli na ugawanye jumla ya picha 12 kwa rangi na mwendo.
Hatua ya 7: Kuandaa Programu
Sehemu ndogo ya 1. Sakinisha Arduino
Upakuaji wa Arduino:
(Sakinisha kutoshea toleo na mfumo wako wa OS.)
-
Sehemu ndogo ya 2. Sakinisha maktaba
* (Ikiwa ungependa kusanikisha kupitia Github, tafadhali tembelea kiunga hapo juu Maktaba ya Github Arduino:
1. Endesha programu ya Arduino
Ruhusu kiunga Menyu ya juu - mchoro - ni pamoja na maktaba - ongeza maktaba ya Zip
3. Unapaswa kuchagua faili ya. Zip ambayo tayari imeweka maktaba ya github4
* (Ikiwa unataka kutumia huduma za programu ya Arduino)
1. Endesha programu za Arduino
2. Ruhusu kiunga Menyu ya juu - mchoro - ni pamoja na maktaba - maktaba ya usimamizi - unatafuta 'Adafruit neopixel' - unaweza kuona 'Adafruit Neopixel na Adafruit'
3. Sakinisha na usasishe maktaba
-
Sehemu ndogo ya 3. Sakinisha programu ya kubadilisha fedha
1. Sakinisha Programu ya Mzunguko wa Mzunguko (R. C. P):
2. Unahitaji kusoma faili ya README
Hatua ya 8: Kutengeneza Ugavi wa Umeme wa Vifaa
* Hii ndio njia ya kusambaza voltage ya Arduino 5V kupitia betri. Tafadhali fuata hatua zifuatazo.
1. Unganisha betri ya Lithiamu na moduli ya kuchaji ya JBATT. (Kwa kumbukumbu, moduli ya JBATT ina swichi ya nguvu iliyojengwa.)
2. Unganisha kituo cha pato cha JBATT kwa Vin terminal ya Arduino na Ground terminal.
3. Unganisha bandari ya usb ya Micro 5pin kwenye bandari ya kuchaji ili kuangalia ikiwa bidhaa hiyo imekuwa ikifanya kazi vizuri.
4. Ifuatayo, washa swichi iliyojengwa kuwasha.
5. Ikiwa nyekundu iliyoongozwa inaangaza na kijani kilichoongozwa kijani kibichi huko Arduino, usanidi wa hatua ya nguvu ya bidhaa hukamilika kawaida.
Hatua ya 9: Kufanya vifaa vya I / O na kuangalia OUTPUT (NeoPixel Working)
* Sehemu hii ina sensa na hatua ya pato
1. Unganisha sensorer za Arduino na Hall. Pini ya data inaunganisha na siri ya Arduino 2.
2. Arduino inapowashwa na sumaku iko katika mawasiliano ya karibu na sensa ya Ukumbi, mwongozo mwekundu utawaka.
3. Unganisha Arduino na Neopixel. Neopixels 30 tu hutumiwa.
4. Unganisha pini ya data na pini ya Arduino 6.
5. Unganisha Arduino na upakue kebo kwenye bandari ya usb ya kompyuta yako na uendesha Arduino kwenye kompyuta yako.
6. Chagua Zana - bodi - "Arduino / Genuino Mega au Mega 2560" kutoka kwenye menyu ya juu ya programu ya Arduino.
7. Angalia ikiwa kuna orodha ya bidhaa ambazo zinaweza kushikamana moja kwa moja na bandari. Ikiwa haijakaguliwa, bonyeza ili uichague.
8. Bandika nambari hapa chini na ubonyeze Pakia juu kushoto. (Baadaye, upakiaji wote wa programu hufuata hatua 5-8.)
9. Usanidi umekamilika wakati saizi zote 30 za neoled zinawasha.
# 1. pamoja na faili ya kichwa na utayarishaji
Kwanza tunahitaji kuleta maktaba Adafruit_NeoPixel ambayo inaweza kuigiza Neopixels.
Maktaba inaweza kutumika kwa kutangaza vitu.
Darasa la Adafruit_NeoPixel linaweza kuingiza parameta 3 hadharani.
Kigezo cha kwanza ni idadi ya LED.
parameter ya sekunde ni nambari ya pini iliyounganishwa na pembejeo ya dijitali ya Neopixel.
Kigezo cha tatu ni chaguzi za kuingiza kulingana na sifa za bidhaa. bidhaa ya rangi tatu ya WS2812b hutumia pembejeo ya 'NEO_GRB'
# pamoja
#fafanua PIN 6 Adafruit_NeoPixel strip = Adafruit_Neopixel (30, PIN, NEO_GRB + NEO_KHZ800);
# 2. kuanzisha
Katika sehemu ya usanidi, anzisha kitu na uitayarishe kwa matumizi.
'Adafruit_Neopixle_Object.begin ()' inaweka LED zote kuzima.
'Adafruit_Neopixle_Object.show ()' matokeo na mwangaza uliowekwa kwenye LED.
usanidi batili () {
strip. kuanza (); onyesha (); }
# 3. kitanzi kuu
Kitendo cha kitanzi kuu hutumia kitanzi kwa kutoa kwa mtiririko (sekunde 0.1) LED zilizo nyeupe
kitanzi batili () {
kwa (uint16_t i = 0; i <strip.numPixels (); i ++) {strip.setPixelColor (i, 255, 255, 255); onyesha (); kuchelewesha (100); }}
Hatua ya 10: Kukusanyika na Kuambatanisha na Gurudumu
1. Unganisha Neopixels. (Zingatia ukaguzi wa nambari ya siri)
2. Unganisha Sensor ya Ukumbi. (Rejea Hatua ya 9)
3. Ambatisha sura kwa Arduino kati ya baiskeli. (Ambatisha kesi ya Arduino inayofanana na fremu ya baiskeli).
4. Ingiza Arduino iliyounganishwa na Neopixel. (Kuwa mwangalifu kwa sababu bunduki ya gundi ni moto).
5. Ingiza sensorer iliyounganishwa ya Jumba ndani ya Arduino, (Salama tai ya kebo ili sensor ya Jumba isianguke).
6. Solder kuunganisha betri. (Kuwa mwangalifu wakati unauza).
7. Rekebisha na bunduki ya gundi. (Ambatisha moduli ya kuchaji kwenye betri ili kupata nafasi).
8. Chomeka kila mstari kabla ya kuunganisha kwa Arduino, 9. Chomeka kulingana na kila nambari ya siri. (Unganisha mistari ya kuruka kwa moduli ya kuchaji bila kuwachanganya).
10. Maliza kwa bunduki ya gundi mara moja, (Tafadhali kuwa mwangalifu usianguke).
Hatua ya 11: Kuangalia Pembejeo (Takwimu za Sura za SURA)
* Angalia msimbo wa programu ili uone ikiwa sensor inafanya kazi.
1. Bandika na pakia nambari hapa chini.
2. Bonyeza kitufe cha Monitor Monitor juu kulia kwa Arduino.
3. Wakati sumaku inawasiliana na sensorer ya Hall kwa zaidi ya sekunde 1, usanidi unakamilika wakati neno "mawasiliano ya sumaku" linaonekana kwenye mfuatiliaji wa serial.
-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- # 1. Fafanua nambari ya pini na usanidi
Nambari ya pini ya usanidi wa kwanza kutumia sensa ya Jumba na weka nambari ya pini kama bandari ya Kuingiza tu.
Weka mawasiliano ili kuangalia data ya sensorer ya Jumba kwenye mfuatiliaji wa serial.
#fafanua Jumba 2
kuanzisha batili () {pinMode (HALL, INPUT); Kuanzia Serial (9600); }
# 2. kitanzi kuu
Angalia data ya sensa ya Jumba kwa vipindi vya sekunde 0.1.
Ikiwa sumaku imehisi na data hubadilishwa, "mawasiliano ya sumaku" ni pato kwa mfuatiliaji wa serial.
kitanzi batili () {
ikiwa (digitalRead (HALL)) {Serial.println ("wasiliana na magnetic"); } kuchelewa (100); }
Hatua ya 12: Algorithm ya Usimbuaji
* Unda mantiki na usimbuaji kudhibiti Neopixels kulingana na maadili ya sensa.
1. Bandika na pakia nambari hapa chini.
2. Ni kawaida kwa picha kutoonyeshwa vizuri kwa sababu hakuna fremu inayozalishwa. Lakini unaweza kuona inafanya kazi takribani.
3. Gusa haraka na utoe sensa ya Ukumbi na sumaku ndani ya sekunde 1. Rudia operesheni hii karibu mara 10.
4. Usanidi umekamilika wakati rangi za Neopixels hubadilika mara kwa mara.
# 1. Ikijumuisha faili za kichwa na utayarishaji
Kwanza, lazima tuelewe kuwa kumbukumbu ya Arduino Mega haitoshi kushikilia faili ya picha.
Kwa hivyo, faili ya kichwa cha 'avr / pgmspace' hutumiwa kutumia nafasi tofauti ya kumbukumbu.
Kutumia Neopixels, unatangaza kitu na usanidi nambari ya siri ya I / O.
Upangaji wa picha ni mkubwa sana kwa usimbuaji, kwa hivyo pakua na ubandike faili zilizoambatishwa.
# pamoja
#jumuisha #fafanua PIN 6 #fafanua NUMPIXELS 30 #fafanua Jumba 2 Adafruit_NeoPixel strip = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_RGB + NEO_KHZ800); // panga safu katika 'image_array_1.txt' // "'image_array_2.txt' //" 'image_array_3.txt' // "'image_array_4.txt'
# 2. Utofauti wa kimataifa na usanidi
Weka tofauti ya ulimwengu.
Jambo kuu ni kuweka mwangaza, ilikuwa ikiamua mzunguko wa maisha wa bidhaa.
hesabu = 0;
mara mbili v = 0; mara mbili mwisho_v = 0; timer mara mbili = micros (); ex_timer mara mbili = micros (); mara mbili ya mwisho_timer = micros (); int deg = 36; pix = int 35; int rgb = 3; q_arr mara mbili [2] = {0, 0}; int HALL_COUNT = 0; mara mbili VELO; kusindika mara mbili_timer = micros (); kuanzisha batili () {strip.setBrightness (255); strip. kuanza (); onyesha (); Kuanzia Serial (230400); }
# 3. kitanzi kuu - sehemu ya kutoa picha
Nambari hii ni taarifa ya masharti juu ya jinsi ya kutoa wakati gurudumu linazunguka kwa azimio.
Sehemu hii hutumia mzunguko wa kugeuza gurudumu la baiskeli mara moja kama kigezo muhimu sana.
Pia, ni muhimu kusoma data ya safu ya picha kutoka kwa kumbukumbu.
kitanzi batili () {
ikiwa ((hesabu (ex_timer / 120.0) - (micros () - processing_timer))) {timer = micros (); ikiwa (VELO> 360000) {for (int i = 0 + 5; i <pix; i ++) {strip.setPixelColor (i - 5, strip. Color (pgm_read_byte (& (image_1 [count] [1]))), pgm_read_byte (& (image_1 [count] [2])), pgm_read_byte (na (image_1 [count] [0])))); } onyesha (); } vingine ikiwa (VELO 264000) {for (int i = 0 + 5; i <pix; i ++) {strip.setPixelColor (i - 5, strip. Color (pgm_read_byte (& (image_2 [count] [1] pgm_read_byte (& (image_2 [count] [2])), pgm_read_byte (na (picha_2 [hesabu] [0])))); } onyesha (); } vingine ikiwa (VELO 204000) {for (int i = 0 + 5; i <pix; i ++) {strip.setPixelColor (i - 5, strip. Color (pgm_read_byte (& (image_3 [count] [1] pgm_read_byte (& (image_3 [count] [2])), pgm_read_byte (na (picha_3 [hesabu] [0])))); } onyesha (); } vingine ikiwa (VELO <= 204000) {for (int i = 0 + 5; i = 120)) {for (int i = 0 + 5; i <pix; i ++) {strip.setPixelColor (i - 5, strip Rangi (0, 0, 0)); } onyesha (); }
# 4. kitanzi kuu - usindikaji na kuangalia wakati wa mzunguko na kuhisi
Hii ndio sehemu muhimu zaidi ya mfumo mzima.
Kwanza, angalia wakati uliochukuliwa kutekeleza nambari nzima na urekebishe wakati wa pato la LED kwa kila mzunguko.
Wakati uliohisi kila wakati gurudumu linapozunguka hutabiri wakati wa mzunguko unaofuata.
Kuongeza kasi kunaweza kukadiriwa kwa kutoa muda wa mwisho wa mzunguko uliopimwa kutoka kwa wakati wa mzunguko uliopimwa wakati.
Mfumo huhesabu wakati wa usindikaji na kuongeza kasi ili kuhesabu ni muda gani LED zinawashwa mfululizo.
usindikaji_timer = micros ();
ikiwa ((digitalRead (HALL) == HIGH) && (HALL_COUNT == 1)) {VELO = v; v = micros () - mwisho_timer; ex_timer = q_arr [0] - q_arr [1] + v; mwisho_timer = micros (); q_arr [0] = q_arr [1]; q_arr [1] = v; hesabu = 0; HALL_COUNT = 0; } kingine ikiwa (digitalRead (HALL) == CHINI) {HALL_COUNT = 1; }}
Hatua ya 13: Kutumia Programu
* Tumia programu kubadilisha picha na kuingiza data ya maandamano kwenye nambari
1. Ingiza picha kutoka hatua ya juu kwenye folda ya picha kwenye folda ya R. C. P iliyosanikishwa katika hatua ya maandalizi.
- Jinsi ya kuweka picha ni kama ifuatavyo - Badili jina picha 4 za uhuishaji za bidhaa # 1 kwa mpangilio wa 1.png, 2.png, 3.png, na 4-p.webp
2. Endesha faili ya Ver.5.exe.
3. Thibitisha kuwa faili 12 pro_1_code_1.txt kwa pro_3_code_4.txt zimeundwa kwenye folda ya R. C. P.
4. Ikiwa haijaundwa, badilisha yaliyomo kwenye config.txt kama faili ifuatayo ya usanidi.
5. Mara faili itakapoundwa, nakili yaliyomo yote kutoka kwa faili pro_1_code_1.txt na ubandike kwenye sehemu iliyoonyeshwa kwenye nambari hapa chini.
6. Ongeza pro_1_code_2.txt, pro_1_code_3.txt, na pro_1_code_4.txt yaliyomo kwenye sehemu iliyowekwa alama katika mpangilio wa 5.
7. Ikimaanisha 5 na 6, nambari ya pro_2_…, pro_3_code inakamilisha nambari kwa njia ile ile.
Hatua ya 14: Kamilisha
Imekamilisha utengenezaji wa POV ambayo inaunda picha moja na magurudumu matatu.
Ilipendekeza:
Menyu ya Maonyesho ya Arduino OLED na Chaguo Chagua: Hatua 8
Menyu ya Maonyesho ya OD ya Arduino na Chaguo Cha Chagua: Katika mafunzo haya tutajifunza jinsi ya kutengeneza menyu na chaguo la uteuzi ukitumia OLED Onyesha na Visuino
Mwendo ulioamilishwa Mabawa ya Cosplay Kutumia Mzunguko wa Uwanja wa Uwanja wa Maonyesho - Sehemu ya 1: Hatua 7 (na Picha)
Mwendo ulioamilishwa Mabawa ya Cosplay Kutumia Mzunguko wa Uwanja wa Uwanja wa Maonyesho - Sehemu ya 1: Hii ni sehemu ya moja ya mradi wa sehemu mbili, ambayo nitakuonyesha mchakato wangu wa kutengeneza mabawa ya hadithi ya kiotomatiki. Sehemu ya kwanza ya mradi ni mitambo ya mabawa, na sehemu ya pili inaifanya ivaliwe, na kuongeza mabawa
Ukumbi wa Maonyesho na LEDs: Hatua 12
Ukumbi wa Maonyesho na LEDs: Halo, kila mtu! Kwenye ukurasa huu nitakuonyesha dhana ya suluhisho la taa nyepesi kwa modeli za majengo.Kuna orodha ya wasaidizi. Kwa mpangilio wa ukumbi wa maonyesho (muundo): 1. Katoni (takriban 2x2 m) 2. Inafuatilia karatasi (0.5
Jinsi ya Kutengeneza Maonyesho ya Shabiki wa POV: Hatua 6 (na Picha)
Jinsi ya Kutengeneza Onyesho la Shabiki wa POV: Katika mradi huu nitakuonyesha jinsi nilivyobadilisha Shabiki wa zamani wa kawaida kuwa Onyesho la LED la POV ambalo linaweza kukuonyesha mwelekeo mwepesi, maneno au hata wakati. Tuanze
Maonyesho ya sehemu mbili-7 ya Kudhibitiwa na Potentiometer katika MzungukoPython - Maonyesho ya Uvumilivu wa Maono: Hatua 9 (na Picha)
Maonyesho ya sehemu mbili-7 yaliyodhibitiwa na Potentiometer katika CircuitPython - Maonyesho ya Uvumilivu wa Maono: Mradi huu hutumia potentiometer kudhibiti onyesho kwenye sehemu kadhaa za maonyesho ya LED (F5161AH). Kadri kitanzi cha uwezo wa kugeuza kinapogeuzwa nambari inayoonyeshwa hubadilika katika masafa ya 0 hadi 99. Ni LED moja tu inayowashwa wakati wowote, kwa ufupi sana, lakini