Სარჩევი:

სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა: 6 ნაბიჯი
სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა: 6 ნაბიჯი

ვიდეო: სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა: 6 ნაბიჯი

ვიდეო: სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა: 6 ნაბიჯი
ვიდეო: ახალი BMW 5 Series G60 - ყველაზე საშინელი ხუთეული ისტორიაში?! 2024, ნოემბერი
Anonim
სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა
სერიული კონტროლირებადი ცვლადი სიჩქარის ძრავა

აკონტროლეთ მცირე DC ძრავის სიჩქარე არაფრით, გარდა თქვენი კომპიუტერის სერიული პორტისა, ერთი MOSFET და უმნიშვნელო პროგრამული უზრუნველყოფისა. (MOSFET და სერიული პორტი ქმნიან "სიჩქარის კონტროლს"; თქვენ კვლავ დაგჭირდებათ ძრავა და შესაბამისი ძრავა ამ ძრავისთვის; სანამ სერიულ პორტს შეუძლია უზრუნველყოს ძაბვა mosfet- ის ჩართვისა და გამორთვისთვის, მას შეუძლია " t მიაწოდეთ ტიპიური ძრავისთვის საჭირო დენი.)

ნაბიჯი 1: შეხედეთ სქემას

შეხედე წრედს
შეხედე წრედს

ჩვენ ვაპირებთ გავაკეთოთ პულსის სიგანის მოდულაცია ზოგადი N არხის სიმძლავრის MOSFET გამოყენებით, რომელიც დაკავშირებულია მონაცემთა გადაცემის პინთან კომპიუტერის rs232 პორტიდან. როდესაც სერიული პორტი უმოქმედოა, პინი იჯდება "1" მდგომარეობაში, რომელიც rs232- ზე თარგმნის დროს არის დაახლოებით -12V (მძღოლებიდან გამომდინარე, ეს შეიძლება იყოს -9V ან -5V), და ტრანზისტორი საკმაოდ გამორთული იქნება. როდესაც ჩვენ გადავცემთ "0" ბიტს სერიულ პორტზე, rs232 პინი გადავა +12V- ზე ან ასე, რაც საკმარისია mosfets- ის უმეტესობის საკმაოდ კარგად ჩართვისთვის.

თუ ჩვენ გადავცემთ ბევრ "0" ბისს ზედიზედ, ძრავა ახლოს იქნება მთლიანად ჩართული და ძრავა სწრაფად იმუშავებს. თუ ჩვენ გადავცემთ უმეტესწილად "1" ბიტს, ძრავა უფრო ნელა იმუშავებს.

ნაბიჯი 2: გაააქტიურეთ იგი

Wire It Up
Wire It Up

ვინაიდან არსებობს მხოლოდ ერთი კომპონენტი და მხოლოდ რამდენიმე კავშირი, შეგიძლიათ უბრალოდ დაამატოთ მავთულები "თავისუფალი ფორმა".

MOSFET– ები სტატიკური მგრძნობიარეა, ასე რომ იყავით ცოტა ფრთხილად, მაგრამ ძალიან ცოტა კრიტიკული.

ნაბიჯი 3: შექმენით ფაილები PWM მნიშვნელობებით

დააყენეთ ფაილები PWM მნიშვნელობებით
დააყენეთ ფაილები PWM მნიშვნელობებით

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

  • 0.pwm:: შეიცავს 5000 NULL სიმბოლოს (საკონტროლო სივრცე უმეტეს კლავიშებზე) [br] ეს არის ისეთივე ახლოს, როგორც „სრულ სიჩქარეზე“, რამდენადაც ჩვენ შევძლებთ ამ ტექნიკით მიღებას.
  • 1.pwm:: შეიცავს 5000 საკონტროლო- A სიმბოლოს (ascii 01) (თითო "1" ბიტი თითო სიმბოლოზე)
  • 3.pwm:: შეიცავს 5000 საკონტროლო C სიმბოლოს (ascii 03) (ორი "1" ბიტი თითო ნახშირზე)
  • 7.pwm:: შეიცავს 5000 საკონტროლო G სიმბოლოს (ascii 07) (სამი "1" ბიტი თითო სიმბოლოზე)
  • 15.pwm:: შეიცავს 5000 საკონტროლო O სიმბოლოს (ascii 15) (ოთხი "1" ბიტი თითო ნახშირზე)
  • 31.pwm:: შეიცავს 5000 საკონტროლო _ _ სიმბოლოს (ascii 31) (ხუთი "1" ბიტი თითო სიმბოლოზე)
  • 63.pwm:: შეიცავს 5000 "?" სიმბოლოები (ascii 63) (ექვსი "1" ბიტი თითო პერსონაჟზე)
  • 127.pwm:: შეიცავს 5000 DEL სიმბოლოს (ascii 127) (შვიდი "1" ბიტი თითო პერსონაჟზე)

(ახლა, როდესაც მე დავხატე სურათები, თქვენ შეამჩნევთ, რომ რეალურ ბიტიანი შაბლონები არ არის იდეალური. მას შემდეგ, რაც rs232 სერიული პირველ რიგში გადასცემს LSB- ს, ჩვენ ნამდვილად გვსურს ნულის ნაცვლად გადავინაცვლოთ. სავარჯიშო სტუდენტისთვის!)

ნაბიჯი 4: ითამაშეთ DOS– ით: დააკონფიგურირეთ თქვენი COM პორტი და დააკოპირეთ ფაილები

ითამაშეთ DOS– ით: დააკონფიგურირეთ თქვენი COM პორტი და დააკოპირეთ ფაილები
ითამაშეთ DOS– ით: დააკონფიგურირეთ თქვენი COM პორტი და დააკოპირეთ ფაილები

9600 bps არის საერთო ბიტრეიტი. ის მშვენივრად ემთხვევა "დაახლოებით" ერთ ბაიტს მილიწამში, ასე რომ, ამ შემთხვევაში ის თავსებადია PWM სიხშირეზე 1000Hz, რაც, ჩემი აზრით, კარგი იქნება მცირე ზომის ძრავებისთვის. თქვენ შეგიძლიათ ექსპერიმენტი ჩაატაროთ სხვადასხვა სიჩქარით, რომ ნახოთ როგორ მუშაობს ყველაფერი, რაც ამ მეთოდის ერთ -ერთი უპირატესობაა. შექმენით DOS (ან "Command Prompt") ფანჯარა (თუ ვარაუდობთ, რომ იყენებთ Windows OS- ს) და დააკონფიგურირეთ თქვენი პორტის მსგავსი: რეჟიმი com1: 9600, n, 7, 1 ", რომელიც ეუბნება კომპორტის პორტს იმუშაოს 9600bps და გაგზავნოს 7 ბიტი თითოეულ პერსონაჟში (ემთხვევა ჩვენს 7 სხვადასხვა ბიტის სიგრძეს.)" n "ნიშნავს NO პარიტეტს, ასე რომ, ეს იქნება მონაცემთა ერთადერთი ბიტი. "1" ნიშნავს, რომ იქნება ერთი "გაჩერების" ბიტი, რაც ხელს გვიშლის ძრავის ბოლომდე ჩართვაში (ოჰ კარგად.) ასე რომ, ახლა თქვენ შეგიძლიათ ჩართოთ ძრავა ბრძანებებით მოსწონს: დააკოპირეთ 0.pwm com1: ვინაიდან ჩვენ ვაგზავნით 5000 სიმბოლოს დაახლოებით 1 წამში, ძრავა უნდა ჩართოს სრული სიჩქარით დაახლოებით 5 წამის განმავლობაში. თუ გსურთ 5 წამზე ნაკლები, გააკეთეთ უფრო მოკლე ფაილი. ანალოგიურად, შეგიძლიათ გააკეთოთ: დააკოპირეთ 127.pwm com1: გაუშვით ძრავა რაც შეიძლება დაბალი სიჩქარით. დაყენებული მოწყობილობით ძრავა საერთოდ არ ბრუნავს არაფრით "ნელა" ვიდრე 31.pwm, მაგრამ YMMV (მე თხელი k მე მქონდა 12V ძრავა, რომელიც 5V ბატარეას ამცირებდა.) COPY ბრძანება საშუალებას გაძლევთ შეავსოთ ფაილები ერთად, ასე რომ, თუ გსურთ თქვენი ძრავა დააჩქაროს და შემდეგ კვლავ შეანელოთ, შეგიძლიათ გააკეთოთ მსგავსი რამ: დააკოპირეთ 31.pwm+15. pwm+7.pwm+0.pwm+7.pwm+15.pwm+31.pwm com1:

ნაბიჯი 5: აკონტროლეთ ძრავა პროგრამიდან

აკონტროლეთ ძრავა პროგრამიდან
აკონტროლეთ ძრავა პროგრამიდან

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

თუ თქვენი პროგრამირების ენა არ გაძლევთ საშუალებას გამოუშვათ COM1: თქვენ მაინც შეძლებთ ძრავის კონტროლს DOS- ის "გამოძახებით" ბრძანებების ასლის შესასრულებლად. (კარგი. მე გადმოვწერე Microsoft– ის Visual Basic Express 2005 (რომელიც უფასოა) და მოვახერხე ჰორიზონტალური გადახვევის ზოლის მიბმა ძრავის სიჩქარეზე, რომელიც კონტროლდება სერიული პორტის საშუალებით. თქვენს სისტემაში, მაგრამ მე ზუსტად ვერ გავარკვიე რომელი ბიტი იყო საჭირო. პროგრამა ერთდროულად გამარტივებულია და უფრო ძნელი გასაგები (ბოდიში) მრავალმხრივი ხრახნით. ერთი ძაფი არაფერს აკეთებს გარდა სერიული პორტისა და მთავარი თემა კითხულობს გადახვევის ზოლს და განაახლებს სერიული ძაფის მიერ გამოყენებულ ინფორმაციას.)

ნაბიჯი 6: ექსპერიმენტი

Ექსპერიმენტი!
Ექსპერიმენტი!

თუ ყველაფერი ძირითადად მუშაობს, ეს უზარმაზარ ადგილს იძლევა ექსპერიმენტებისთვის.

  • შეასწორე ჩემი ბიტის ნიმუშები!
  • ბიტრეიტს დიდი მნიშვნელობა აქვს?
  • თქვენ უნდა აკონტროლოთ "ჩართული" და "გამორთული" პულსის სიგანე, თუ უბრალოდ საკმარისია მათი თანაფარდობის კონტროლი?
  • თუ თქვენ მხოლოდ უნდა გააკონტროლოთ თანაფარდობა, შეგიძლიათ განიხილოთ მრავალ სიმბოლოთა თანმიმდევრობა უფრო მაღალი ბიტ სიჩქარით, რომ მიიღოთ მეტი სიჩქარე. გამოყვანის 0 შემდეგ 127 იქნება დაახლოებით ნახევარი.
  • ეს ასევე უნდა მუშაობდეს ფანრის ნათურების დაბნელებაზე.

გირჩევთ: