Სარჩევი:

არდუინო ჰოლის ეფექტის სენსორი შეფერხებით: 4 ნაბიჯი
არდუინო ჰოლის ეფექტის სენსორი შეფერხებით: 4 ნაბიჯი

ვიდეო: არდუინო ჰოლის ეფექტის სენსორი შეფერხებით: 4 ნაბიჯი

ვიდეო: არდუინო ჰოლის ეფექტის სენსორი შეფერხებით: 4 ნაბიჯი
ვიდეო: ჰოლის სენსორი KY-003 2024, ივლისი
Anonim
Image
Image
რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?

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

ვიდეოში გამოყენებული ინსტრუმენტები და მასალები (შვილობილი ბმულები): Arduino Uno:

ჰოლის ეფექტის სენსორები:

რეზისტორების ასორტი:

ნაბიჯი 1: რა არის დარბაზის ეფექტის სენსორი?

რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?
რა არის დარბაზის ეფექტის სენსორი?

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

ჰოლის ეფექტის სენსორები გამოიყენება სიახლოვის გამოვლენის, პოზიციონირების, სიჩქარის გამოვლენისა და მიმდინარე ზონდირების პროგრამებისთვის.

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

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

ნაბიჯი 2: რა არის შეფერხება?

რა არის შეფერხება?
რა არის შეფერხება?
რა არის შეფერხება?
რა არის შეფერხება?

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

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

Arduino Uno– ს აქვს ორი ქინძისთავები, რომლებიც შეგვიძლია გამოვიყენოთ როგორც შეფერხებები, პინ 2 და 3. ფუნქციას, რომელსაც ჩვენ ვიყენებთ, რომ დარეგისტრირდეთ ქინძისთავად, როგორც interrupt ეწოდება attachInterrupt, სადაც როგორც პირველი პარამეტრი ჩვენ ვგზავნით პინს გამოსაყენებლად, მეორე პარამეტრი არის იმ ფუნქციის დასახელება, რომლის დარეკვაც ჩვენ გვსურს შეწყვეტის აღმოჩენისთანავე და როგორც მესამე პარამეტრი, ჩვენ ვგზავნით იმ რეჟიმში, რომლის დროსაც ჩვენ გვსურს შეფერხება იმუშაოს. ვიდეოს აღწერილობაში არის ბმული ამ ფუნქციის სრული მითითებისთვის.

ნაბიჯი 3: კავშირები და კოდი

კავშირები და კოდი
კავშირები და კოდი
კავშირები და კოდი
კავშირები და კოდი
კავშირები და კოდი
კავშირები და კოდი

ჩვენს მაგალითში, ჩვენ ვუკავშირდებით დარბაზის ეფექტების სენსორს Arduino– ს პინ 2 – ზე. ესკიზის დასაწყისში ჩვენ განვსაზღვრავთ ცვლადებს ჩამონტაჟებული LED- ის პინის ნომრისთვის, შეწყვეტის პინისთვის და ასევე ბაიტის ცვლადისათვის, რომელსაც ჩვენ შევიყენებთ შესაწყვეტად. მნიშვნელოვანია აღინიშნოს ეს როგორც არასტაბილური, რათა შემდგენელმა იცოდეს, რომ ის იცვლება ძირითადი პროგრამის ნაკადის გარეთ, წყვეტის საშუალებით.

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

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

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

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

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

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

ნაბიჯი 4: შემდგომი ქმედებები

შემდგომი მოქმედებები
შემდგომი მოქმედებები

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

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

გაიხარე და მადლობა ყურებისთვის!

გირჩევთ: