Სარჩევი:

სტეპერი პომოდოროს ტაიმერი: 3 ნაბიჯი (სურათებით)
სტეპერი პომოდოროს ტაიმერი: 3 ნაბიჯი (სურათებით)

ვიდეო: სტეპერი პომოდოროს ტაიმერი: 3 ნაბიჯი (სურათებით)

ვიდეო: სტეპერი პომოდოროს ტაიმერი: 3 ნაბიჯი (სურათებით)
ვიდეო: #სტეპერი - მაკა ჭანტურია ინტერიერის დიზაინერი 2024, ნოემბერი
Anonim
Image
Image
ნაბიჯი 1: შედუღება და შეერთება კონტეინერის გარეთ
ნაბიჯი 1: შედუღება და შეერთება კონტეინერის გარეთ

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

ინსტრუმენტები

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

• მავთულის სტრიპტიზატორები

• ლაზერული საჭრელი (ან საფქვავი დამოკიდებულია იმაზე, თუ როგორ გსურთ შექმნათ ტაიმერის ციფერბლატი)

• საბურღი (მე გამოვიყენე საბურღი პრესი, რომ ჩავარდნა ხვრელები საკმარისად დიდი ციფერბლატისთვის)

მასალები

• 1 არდუინო უნო

• 1 ნახევრად ზომის პურის დაფა

• 3 H ხიდები (მე ვიყენებ DRV8833- ს, საავტომობილო ფარიმ დამიზოგა დრო და თავის ტკივილი)

• 3 სტეპერიანი ძრავა (მე გამოვიყენე NEMA 17 სტეპერი)

• 1 ღილაკი

• 1 220-1K ohm რეზისტორი (დიაპაზონში ნებისმიერი კარგია)

• AC/DC ადაპტერი (მე გამოვიყენე 12 ვ, ალბათ ძალიან დიდი ამ რაოდენობის სტეპერებისთვის)

• დენის გამყოფი

• USB A-B მავთული

• პურის დაფის მავთულები

• შემდუღებელი

• მასალები ტაიმერის კონტეინერისთვის

• აკრილის აკრიფეთ

• ლურსმნები ან ლითონის ქინძისთავები, რომლებიც მოქმედებენ როგორც ტაიმერის სტაციონარული მკლავი

ნაბიჯი 1: ნაბიჯი 1: შედუღება და შეერთება კონტეინერის გარეთ

ამ ნაბიჯისათვის დავიწყე ყველა ჩემი H ხიდის ერთმანეთთან შედუღება (თუ თქვენ ყიდულობთ საავტომობილო ფარს, არ გჭირდებათ მათი შედუღება. მას შემდეგ რაც თითოეულ საფეხურზე H ხიდი გექნებათ შეგიძლიათ შეამოწმოთ თუ როგორ არის თქვენი საფეხურები სადენიანი.

NEMA 17s არის ის, რაც ცნობილია როგორც ბიპოლარული სტეპერიანი ძრავები, რაც იმას ნიშნავს, რომ მათ აქვთ ორი (და არა ერთი) ნაკრები ძრავაში, რომლებიც ცვლის პოლარობას, რათა მოხდეს ძრავის ზუსტი მოძრაობა. ბიპოლარულ საფეხურებს ჩვეულებრივ აქვთ ოთხი მავთული, ხოლო პოლარულ საფეხურებს - ექვსი, რამაც ცოტათი გაართულა ონლაინ ინსტრუქციები. თუმცა თქვენ შეგიძლიათ მიამაგროთ მრავალ მეტრი ორ მავთულს და ნახოთ ისინი დაკავშირებულია თუ არა. NEMA 17 სტეპერებს აქვთ მავთულის წესრიგი წითელი, ყვითელი, ნაცრისფერი, მწვანე ფერის მიხედვით, წითელი და ნაცრისფერი არის პირველი პოლარული წყვილი, ხოლო ყვითელი და მწვანე მეორე პოლარული წყვილი. თუ რომელიმე მომენტში სტეპერი იწყებს კრუნჩხვას, ვიდრე ასრულებს მოსალოდნელ მოძრაობას, შანსი იმაში მდგომარეობს, რომ თქვენი მავთულები რატომღაც არ არის პოლარიზებული მათ ტყუპისცალზე ან ერთი გათიშულია. თითოეული სტეპერი კონტროლდება ოთხი გამომავალი ქინძისთავით, რომლებიც უკავშირდება DRV8833 H ხიდებს. DRV8833– ში შეყვანის გაყვანილობის ბრძანება არის: IN1, IN2, Power, Ground, IN3, IN4. გამომავალი მიზნებისათვის, NEMA უბრალოდ აკავშირებს ექვს ქინძისთავებს შუა ოთხთან, თანმიმდევრობით: წითელი, ნაცრისფერი, ყვითელი, მწვანე. ახლა მოდით დავუკავშიროთ ძალა. მე მაქვს ჩემი NEMA ციფრული პორტებზე 2–13.

ამის გასაძლიერებლად შევიძინე 12V AC/DC ადაპტერი გამყოფით, რომ შევძლო როგორც არდუინოს, ასევე ყველა სტეპერის ჩართვა. გაფრთხილება: არ დაუკავშიროთ თქვენი დენის და სახმელეთო მავთულები Arduino– დან, რომელიც უკვე იღებს ენერგიას პორტიდან პურის დაფაზე, რომელიც იღებს პირდაპირ ენერგიას AC/DC– დან. ის გაგიფუჭებთ დაფას. კედელში ჩართული 12 ვ ადაპტერიდან სპლიტერის ერთი ნაწილი პირდაპირ არდუინოს პორტისკენ წავიდა, მეორე კი პურის დაფის დადებითსა და უარყოფითზე.

და ბოლოს, დროა დააჭიროთ ღილაკს. ღილაკის ერთ მხარეს დასჭირდება როგორც ენერგია (ჩვენი რეზისტორი შეჭრილია) ასევე გამომავალი პინი შეკრული (ეს ასევე შეიძლება გაკეთდეს პურის დაფაზე). მეორე ქინძი იქნება ჩვენი საფუძველი. ეს სამი მავთული უნდა იყოს ჩართული: სიმძლავრე რეზისტორთან 5 ვ -მდე, გამომავალი A0 და მიწამდე მიწასთან დაკავშირებული ყველაფერი თავად არდუინო უნოს დაფაზე.

აქედან ჩვენ უნდა შეგვეძლოს სტეპერების გაკონტროლება ამ ძირითადი სტეპერ ტესტის კოდის გამოყენებით. ეს ახსნა Arduino.cc– ზე ასევე იძლევა უფრო სრულყოფილ ახსნას ბი/ერთპოლარული საფეხურების შესახებ, თუ დაგჭირდებათ. შემდეგი მოდით შევიდეთ კოდში Pomodoro– სთვის!

ნაბიჯი 2: ნაბიჯი 2: ატვირთეთ კოდი და შეცვალეთ იგი თქვენს საჭიროებებზე

ნაბიჯი 2: ატვირთეთ კოდი და შეცვალეთ იგი თქვენს საჭიროებებზე
ნაბიჯი 2: ატვირთეთ კოდი და შეცვალეთ იგი თქვენს საჭიროებებზე

ქვემოთ მოცემულია კოდი ჩემი Pomodoro– ს ღილაკით, რათა დააკონფიგურიროთ ის თქვენს კონფიგურაციაზე, მიყევით ამ ნაბიჯებს:

1. დააყენეთ რამდენი ნაბიჯი თითო რევოლუციაზე თქვენს პირად სტეპერ ტიპს (NEMA 17 -ებს აქვს 200 და ის ჩამოთვლილია მუდმივ რიცხვში, რომელსაც ეწოდება ნაბიჯები PerRevolution).

2. დაადგინეთ, სად არის თქვენი ღილაკი შეყვანილი მუდმივი რიცხვის აბონენტის ღილაკზე.

3. დაადგინეთ, საიდან უნდა გამოვიდეს თქვენი არდუინო სტეპერების ბრძანებისთვის (ეს ნაწილები შეიძლება ყველაზე მეტად განსხვავდებოდეს H ხიდის ტიპებს შორის, რადგან ბევრ მათგანს აქვს განსხვავებული ბიბლიოთეკა).

4. დააყენეთ სტეპერის სიჩქარე RPM– ში.setSpeed (მე მაქვს ჩემი მითითებული 1 rpm– ზე საათის ისრის მიმართულებით და 30 rpm– ის საწინააღმდეგოდ საათის ისრის მიმართულებით).

5. განსაზღვრეთ რამდენჯერ გსურთ თითოეული თქვენი სტეპერი გადატრიალდეს სანამ ის მოძრაობს (ჩემი საფეხურები ათ წუთს ითვლიან, ასე რომ ისინი ათჯერ ბრუნავს 1 RPM– ით).

6 დაადგინეთ რამდენ ხანს გსურთ რომ ის ბრუნდებოდეს უკან.

#ჩართეთ

const int stepsPerRevolution = 200; // მუდმივი მითითება რამდენი ნაბიჯის გადადგმაა ჩემს სტეპერ ძრავების ყოველ სრულ რევოლუციაში

const int buttonPin = A0; // ჩემი ღილაკის შეყვანის მუდმივის დაყენება

სტეპერი პირველი საფეხური (ნაბიჯები PerRevolution, 2, 3, 4, 5); // სტეპერ ბიბლიოთეკის ინიციალიზაცია გარკვეულ ქინძისთავებზე

სტეპერი მეორე საფეხური (ნაბიჯები PerRevolution, 6, 7, 8, 9); სტეპერი მესამე საფეხური (ნაბიჯები PerRevolution, 10, 11, 12, 13); სტეპერი პირველი StepperBack (ნაბიჯები PerRevolution, 2, 3, 4, 5); // ამ პინებზე სტეპერ ბიბლიოთეკის ხელახალი ინიციალიზაცია, რათა შესაძლებელი იყოს rpm- ის გადატვირთვა გაფრთხილებისას, როდესაც დრო ამოიწურა Stepper secondStepperBack (ნაბიჯები PerRevolution, 6, 7, 8, 9); სტეპერი მესამე StepperBack (ნაბიჯები PerRevolution, 10, 11, 12, 13);

int minutesCounter = 0; // int ითვლის სტეპერების რევოლუციების სრულ რაოდენობას

int timerState = LOW; // პომოდოროს ქრონომეტრის ამჟამინდელი მდგომარეობა (HIGH = ჩართული, LOW = გამორთული/გადატვირთვა) int ღილაკი სახელმწიფო; // მიმდინარე კითხვა შეყვანის პინიდან int lastButtonState = HIGH; // წინა წაკითხვა შეყვანის პინიდან

// შემდეგი ცვლადები ხელმოუწერელი გრძელია, რადგან დრო, რომელიც იზომება მილიწამებში, // სწრაფად გახდება უფრო დიდი რიცხვი, ვიდრე შეიძლება ინახებოდეს ინტ. ხელმოუწერელი longDebounceTime = 0; // ბოლოს გამომავალი პინი ჩაირთო ხელმოუწერელი გრძელი დებუნსუდი = 50; // დებონუსის დრო; გაიზარდოს თუ გამომავალი ციმციმებს

void setup () {

pinMode (buttonPin, INPUT_PULLUP); // დააყენეთ ღილაკის მუდმივი შეყვანის სახით

firstStepper.setSpeed (1); // დააწესეთ სიჩქარე 1 rpm– ზე 10 წუთის განმავლობაში თითო სტეპერზე secondStepper.setSpeed (1); thirdStepper.setSpeed (1); firstStepperBack.setSpeed (30); // დააყენეთ სიჩქარე 30 rpm გაფრთხილებისათვის, რომ დრო ამოიწურა მას შემდეგ, რაც Pomodoro– მ დაასრულა secondStepperBack.setSpeed (30); thirdStepperBack.setSpeed (30);

სერიული.დაწყება (9600); // სერიული მონიტორის დაწყება 9600 ბაუდის სიჩქარით

}

ბათილი მარყუჟი () {

// წაიკითხეთ გადართვის მდგომარეობა ადგილობრივ ცვლადში: int reading = digitalRead (buttonPin);

// შეამოწმეთ, უბრალოდ დააჭირეთ ღილაკს

// (ანუ შეყვანა შედიოდა LOW– დან HIGH– ში) და თქვენ დაელოდეთ // იმდენ ხანს, რაც ბოლო დაჭერის შემდეგ ხმაურის იგნორირება მოახდინეთ:

// თუ შეცვლა შეიცვალა ხმაურის ან დაჭერის გამო:

if (კითხულობს! = lastButtonState) {// გადააყენეთ დებუნის ქრონომეტრი lastDebounceTime = millis (); } if ((millis () - lastDebounceTime)> debounceDelay) {// რაც არ უნდა იყოს კითხვა, ის იქ უფრო დიდი ხანია // ვიდრე დებუნციის დაგვიანება, ასე რომ აიღეთ ის როგორც ამჟამინდელი მდგომარეობა:

// თუ ღილაკის მდგომარეობა შეიცვალა:

თუ (კითხულობს! = buttonState) {buttonState = კითხულობს;

// ტაიმერის გააქტიურება მხოლოდ იმ შემთხვევაში, თუ ღილაკის ახალი მდგომარეობა მიუთითებს მის დაჭერაზე

// დააჭირეთ ერთხელ ჩართვისთვის, კვლავ დააჭირეთ გამორთვისას თუ (buttonState == LOW) {timerState =! timerState; Serial.print ("ტაიმერის მდგომარეობა არის"); Serial.println (timerState); }}}

თუ (timerState == HIGH) {

Serial.println ("პომოდოროს ქრონომეტრი დაიწყო"); if (minutesCounter <11) {// თუ მიმდინარე მეორე მნიშვნელობა განსხვავდება წინა მნიშვნელობისა მაშინ firstStepper.step (stepsPerRevolution); // გადააქციე სტეპერი 200 საფეხური/1 ბრუნვა წუთი Counter ++; Serial.print ("minutesCounter is"); Serial.println (minutesCounter); }

if (11 <= minutesCounter && minutesCounter <21) {// თუ ამჟამინდელი მეორე მნიშვნელობა განსხვავდება წინა მნიშვნელობისგან მაშინ secondStepper.step (stepsPerRevolution); // გადააქციე სტეპერი 200 საფეხური/1 ბრუნვა წუთი Counter ++; Serial.print ("minutesCounter is"); Serial.println (minutesCounter); }

if (21 <= minutesCounter && minutesCounter <31) {// თუ ამჟამინდელი მეორე მნიშვნელობა განსხვავდება წინა მნიშვნელობისგან მაშინ thirdStepper.step (stepsPerRevolution); // გადააქციე სტეპერი 200 საფეხური/1 ბრუნვა წუთი Counter ++; Serial.print ("minutesCounter is"); Serial.println (minutesCounter); }

if (31 <= minutesCounter && minutesCounter <1031) {// თუ მიმდინარე მეორე მნიშვნელობა განსხვავდება წინა მნიშვნელობისა მაშინ firstStepperBack.step (-1); // გადააქციე სტეპერი უკან 1 ნაბიჯი თანმიმდევრობით ისე რომ გამოჩნდეს როგორც ყველა მუშაობს ერთდროულად secondStepperBack.step (-1); thirdStepperBack.step (-1); minutesCounter ++; Serial.print ("minutesCounter is"); Serial.println (minutesCounter); }} სხვა {Serial.println ("Pomodoro timer is off"); } // შეინახეთ კითხვა. შემდეგ დროს მარყუჟის გავლით, // ეს იქნება lastButtonState: lastButtonState = კითხვა; }

ნაბიჯი 3: ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ

ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ
ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ
ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ
ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ
ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ
ნაბიჯი 3: შეინახეთ სტეპერები და არდუინო, თუ გსურთ

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

გირჩევთ: