Სარჩევი:

ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით: 5 ნაბიჯი
ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით: 5 ნაბიჯი

ვიდეო: ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით: 5 ნაბიჯი

ვიდეო: ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით: 5 ნაბიჯი
ვიდეო: იარე ბაგი ქალაქში! - Urban Quad Racing GamePlay 🎮📱 🇬🇪 2024, ნოემბერი
Anonim
ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით
ველოსიპედის სიმულატორი რეალურ დროში სიჩქარის რეგულირებით

ეს პროექტი იყენებს მაგნიტური ლერწმის გადამრთველს, რათა შექმნას სპიდომეტრი და გააკონტროლოს პირველი პირის ველოსიპედის ვიდეოების ვიდეო სიჩქარე YouTube- ზე ან სხვა მედიაზე. Arduino ითვლის mph და შემდეგ იყენებს ამ ინფორმაციას კომპიუტერის ღილაკის დაჭერის სიმულაციისთვის. ამ ღილაკის დაჭერა, დაწყვილებული Google Chrome გაფართოებით, აჩქარებს ან ანელებს ვიდეოს სიჩქარის ცვლილების საფუძველზე. მას აქვს ძირითადი აპარატურა, რომელიც Arduino– ს დამწყებებმა მარტივად შეუძლიათ დამოუკიდებლად შექმნან.

სპიდომეტრის კოდი ემყარება ამ პროექტს:

აპარატურის სია:

1. არდუინო ლეონარდო

2. მიკრო USB კაბელი (საჭიროებს ფაილის გადაცემას და <3 ფუტს)

3. მაგნიტური ლერწმის გადამრთველი

4. 10k Ohm რეზისტორი

5. 22 Gauge Wire (<4ft)

6. შესადუღებელი რკინა

7. შემდუღებელი

8. ელექტრო ფირზე

9. Zip Ties

10. სტაციონარული ველოსიპედის სადგამი

11. ველოსიპედი

ნაბიჯი 1: ჩამოტვირთეთ შესაბამისი პროგრამა თქვენს კომპიუტერში

1. Arduino IDE

2. ვიდეო სიჩქარის კონტროლერი (ვებ ბრაუზერის გაფართოება)

ა გუგლ ქრომი

ბ Firefox

ნაბიჯი 2: აპარატურა

ტექნიკა
ტექნიკა
ტექნიკა
ტექნიკა
ტექნიკა
ტექნიკა

ყველა კავშირი უნდა იყოს შეკრული ერთმანეთთან და გადაბმული ელექტრული ლენტით. Arduino შეიძლება დამონტაჟდეს ველოსიპედზე პლასტმასის ყუთის გამოყენებით, რომელიც მოყვება Arduino– ს (მიბმულია ზემოთ ნაწილების ჩამონათვალში). ეს მნიშვნელოვანია, რადგან თუ ველოსიპედის მეტალი უშუალო კონტაქტშია ქინძისთავებთან, მას შეუძლია არასასურველი კავშირების შექმნა. კორპუსს ასევე აქვს ხვრელები, რომლებიც საქმეს ზიპით აკავშირებს ველოსიპედზე. 22 ლიანდაგიანი მავთული უნდა იყოს შემოხვეული ველოსიპედის ჩარჩოს გასწვრივ და უზრუნველყოფილი იყოს ლენტით ან სამაგრებით. დარწმუნდით, რომ თავიდან აიცილოთ მავთულის შეფუთვა ნებისმიერ ადგილას, სადაც ის შეიძლება დაიჭიროს მოძრავ მექანიზმებზე.

ნაბიჯი 3: მოათავსეთ ველოსიპედი სტაციონარული ველოსიპედის სადგამზე

მიამაგრეთ ველოსიპედი სტაციონარული ველოსიპედის სადგამზე და დარწმუნდით, რომ ის საკმაოდ ახლოს არის თქვენს კომპიუტერთან, რომ მიკრო USB კაბელი თქვენს კომპიუტერამდე მიაღწიოს. ასევე, დარწმუნდით, რომ თქვენთვის სანახავი მანძილი შესაფერისია იმისათვის, რომ შეძლოთ ეკრანის კომფორტულად დანახვა. გაკვეთილი, თუ როგორ უნდა განათავსოთ თქვენი ველოსიპედი სადგამზე, შეგიძლიათ იხილოთ აქ.

ნაბიჯი 4: ატვირთეთ და შეამოწმეთ Arduino კოდი

ატვირთეთ და შეამოწმეთ Arduino კოდი
ატვირთეთ და შეამოწმეთ Arduino კოდი

თუ თქვენ ახალი ხართ Arduino IDE– ში, შესავალი გვერდი შეგიძლიათ იხილოთ აქ. მნიშვნელოვანია აღინიშნოს, რომ ლეონარდოს ასატვირთად სჭირდება მიკრო USC კაბელი, რომელსაც აქვს ფაილის გადაცემის შესაძლებლობები. ბევრი მიკრო USB კაბელი გამოიყენება მხოლოდ დასატენად და ის არ იმუშავებს. მას შემდეგ, რაც Arduino Leonardo აღიარებულია კომპიუტერის მიერ, დააკოპირეთ და ჩასვით და ატვირთეთ შემდეგი კოდი:

// ეს კოდი პოულობს ველოსიპედის სიჩქარეს და გარდაქმნის მას კომპიუტერის კლავიატურის დაჭერით

// გამოთვლები

// საბურავის რადიუსი ~ 13.5 ინჩი // გარშემოწერილობა = pi*2*r = ~ 85 ინჩი // მაქსიმალური სიჩქარე 35 კმ/სთ = ~ 616 ინჩი/წამი // მაქსიმალური ბრუნვა =.2 7.25

#ჩართეთ

#განსაზღვრეთ ლერწამი A0 // პინი დაკავშირებულია წაკითხვის გადამრთველთან

// შენახვის ცვლადები

int reedVal; გრძელი ქრონომეტრი; // დრო ერთ სრულ ბრუნვას შორის (ms- ში) float mph; float radius = 13.5; // საბურავის რადიუსი (ინჩებში) float circumference; float vprevious; მცურავი კურსი;

int maxReedCounter = 100; // წთ დრო (ms- ში) ერთი ბრუნვის (დენონსონირებისათვის)

int reedCounter;

void setup () {

reedCounter = maxReedCounter; გარშემოწერილობა = 2*3.14*რადიუსი; pinMode (ლერწამი, შეყვანა); კლავიატურა. დაწყება (); // TIMER SETUP- ქრონომეტრის შეწყვეტა საშუალებას იძლევა ლერწმის გადამრთველის ზუსტი დროული გაზომვები // arduino ქრონომეტრების კონფიგურაციის შესახებ დამატებითი ინფორმაციისათვის იხილეთ https://arduino.cc/playground/Code/Timer1 cli (); // შეწყვეტის შეწყვეტა

// დააყენეთ ტაიმერი 1 შეწყვეტა 1 კჰც -ზე

TCCR1A = 0; // დააყენეთ მთელი TCCR1A რეესტრი 0 TCCR1B = 0; // იგივე TCCR1B TCNT1 = 0; // დააყენეთ ტაიმერის რაოდენობა 1 კჰც ნამატებისთვის OCR1A = 1999; // = (1/1000)/((1/(16*10^6))*8) - 1 // ჩართეთ CTC რეჟიმი TCCR1B | = (1 < <WGM12); // დააყენეთ CS11 ბიტი 8 წინასწარგამრიცხველი TCCR1B | = (1 << CS11); // ტაიმერის ჩართვა შეადარეთ შეწყვეტა TIMSK1 | = (1 << OCIE1A); sei (); // შეწყვეტის დაშვება // END TIMER SETUP Serial.begin (9600); }

ISR (TIMER1_COMPA_vect) {// შეწყვეტა სიხშირეზე 1 კჰც სიხშირის ლერწმის გადამრთველის გასაზომად

reedVal = digitalRead (ლერწამი); // მიიღე A0, თუ (reedVal) {// თუ ლერწმის გადამრთველი დაკეტილია თუ (reedCounter == 0) {// წთ იმპულსებს შორის დრო გავიდა vprevious = mph; დაგვიანება (500); mph = (56.8*float (გარშემოწერილობა))/float (ტაიმერი); // გამოთვალეთ მილი საათში ტაიმერი = 0; // ტაიმერის გადატვირთვა reedCounter = maxReedCounter; // გადატვირთვა reedCounter} else {if (reedCounter> 0) {// არ მისცე reedCounter უარყოფითი reedCounter -= 1; // შეამცირე reedCounter}}} სხვა {// თუ ლერწმის გადამრთველი ღიაა თუ (reedCounter> 0) {// არ მისცე reedCounter უარყოფითი reedCounter -= 1;/ /decment reedCounter}} if (ქრონომეტრი> 2000) {mph = 0; // თუ ლერწმის საბურავიდან ახალი იმპულსები არ არის, დააყენეთ mph 0- ზე წინა = 0; } else {ტაიმერი += 1; // გაზრდის ქრონომეტრი}}

void controlComp () {

if (vprevious mph) // შეანელეთ ვიდეო სიჩქარე {Keyboard.press ('s'); Keyboard.releaseAll (); დაგვიანება (750); } if (vprevious == mph) // არაფრის გაკეთება {; }} void loop () {// ამობეჭდოთ mph წამში ორჯერ Serial.print ("V წინა:"); Serial.print ("\ t"); Serial.println (წინა);

Serial.print ("MPH:");

Serial.print ("\ t"); სერიული. ბეჭდვა (mph); controlComp (); }

მას შემდეგ, რაც კოდი წარმატებით აიტვირთება, გახსენით სერიული მონიტორი. უკანა ბორბლის მოძრაობის გარეშე, "MPH" და "VPrevious" უნდა იყოს 0.00. გადაატრიალეთ ბორბალი ისე, რომ ის აჩქარდეს რამდენიმე რევოლუციისთვის და შემდეგ შენელდეს. მონიტორმა უნდა წაიკითხოს სიჩქარე და ტიპი d’აჩქარებისათვის და s’ შენელებისთვის. თუ ბორბლის ბრუნვისას არანაირი მნიშვნელობა არ გამოჩნდება, მაგნიტი შეიძლება არ გამოვლინდეს ლერწმის გადამრთველით. დარწმუნდით, რომ მაგნიტი საკმარისად ძლიერია, როდესაც მოუსმენთ ხმაურს, როდესაც მაგნიტი გადადის გადამრთველზე.

ნაბიჯი 5: დააყენეთ YouTube კონტროლერი

დააყენეთ YouTube კონტროლერი
დააყენეთ YouTube კონტროლერი

ბოლო ნაბიჯი არის YouTube– ის ვიდეოების გაშუქება, რომელთა გამოყენება გსურთ თქვენი ველოსიპედის გასავლელად. იდეა არის პირველი პირის ვიდეოები, რომლებშიც შეგიძლიათ სრულად ჩაძიროთ და ისიამოვნოთ პეიზაჟებით ველოსიპედის დროს. მე შევასრულე YouTube– ის დასაკრავი სია სხვადასხვა ვიდეო ვარიანტებით. ისინი მერყეობს მრავალი არხიდან, რომლებიც ატვირთავენ ვიდეოებს, რომლებიც შეესაბამება პირველი პირის კრიტერიუმებს. ისინი ასევე არიან ვიდეოები, როგორიცაა ღრუბლებში გაფრენა და მატარებლით მგზავრობა სხვადასხვა პირველადი თავგადასავლებისთვის.

გირჩევთ: