Სარჩევი:

შერჩევის მაჩვენებელი/Aliasing Instructable: 8 ნაბიჯი (სურათებით)
შერჩევის მაჩვენებელი/Aliasing Instructable: 8 ნაბიჯი (სურათებით)

ვიდეო: შერჩევის მაჩვენებელი/Aliasing Instructable: 8 ნაბიჯი (სურათებით)

ვიდეო: შერჩევის მაჩვენებელი/Aliasing Instructable: 8 ნაბიჯი (სურათებით)
ვიდეო: Python Web Apps with Flask by Ezra Zigmond 2024, ნოემბერი
Anonim
შერჩევის მაჩვენებელი/Aliasing Instructable
შერჩევის მაჩვენებელი/Aliasing Instructable

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

ნაბიჯი 1: Ciruit განლაგება

Ciruit განლაგება
Ciruit განლაგება
Ciruit განლაგება
Ciruit განლაგება

არდუინო

Arduino არის სქემის საფუძველი; სერვო ძრავის მხარდაჭერა (დამონტაჟებული კოდირების ბორბლით) და განლაგებული დარბაზის ეფექტის სენსორი.

-დაშიფვრის ბორბალი: კოდირების ბორბლის დანიშნულებაა შეაჩეროს მაგნიტი, რომელიც ბრუნავს წრიულ გზაზე და მოძრაობს დარბაზის ეფექტის სენსორზე.

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

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

  1. მიიღეთ მასალები:

    არდუინო (+ პურის დაფა), მავთულები, კოდირების ბორბალი, მაგნიტი, დარბაზის ეფექტის სენსორი, სერვო ძრავა, Matlab პროგრამა, არდუინოს პროგრამა

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

ნაბიჯი 2: Arduino კოდი

არდუინოს კოდი
არდუინოს კოდი

მონაცემთა შეგროვების მეთოდი

არდუინოს კოდი იყენებს [სტრიქონი 41] ინფორმაციის შეგროვებას 'Analog In' A0 პორტის საშუალებით, დარბაზის ეფექტის სენსორიდან

სერიული მონაცემების გადაცემის მეთოდი

  • [სტრიქონი 43] სერიულ მონიტორში აისახება ცვლადი 'ტაიმერი', რომელიც ახორციელებს ფუნქციას 'millis ()', რომ შეინარჩუნოს ტაიმერი მილიწამებში პროგრამის ხანგრძლივობის განმავლობაში.
  • [სტრიქონი 45] სერიულ მონიტორზე მოთავსებულია ცვლადი 'hallsensor', რომელიც ახორციელებს 'analogRead' - ს, რათა მიიღოთ ინფორმაცია დარბაზის ეფექტის სენორისგან პროგრამის გაშვებისას.

დაგვიანების () პარამეტრის მიზანი

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

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

შეიყვანეთ Arduino კოდი Arduino პროგრამაში

ნაბიჯი 3: Matlab კოდი (HallRT ფაილი)

Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)
Matlab კოდი (HallRT ფაილი)

- მონაცემთა მიღების მეთოდი - [სურათი 3: სტრიქონი 77]

მონაცემების მოპოვება ArduinoStep– დან

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

Matlab კოდი არის ფიგურების ზემოთ, შეინახეთ HallRT ფაილში

ნაბიჯი 4: Matlab კოდი (thresh_analyze)

Matlab კოდი (thresh_analyze)
Matlab კოდი (thresh_analyze)
Matlab კოდი (thresh_analyze)
Matlab კოდი (thresh_analyze)

მწვერვალების დათვლის მეთოდი [სურათი 2: ხაზები 45-53]

  • დროშის გამოყენება ამ Matlab კოდში არის ისე, რომ მას შემდეგ, რაც for მარყუჟს გადაეყრება "aRval", რომელიც აღემატება წინასწარ დადგენილ "thresh"-ის მნიშვნელობას, გაიზრდება ერთით, მწვერვალი აღინიშნება ვარსკვლავებით და if- განაცხადი [სტრიქონი 45-50] დაირღვევა, რადგან დროშა = 1. მეორე if- განცხადება დროშით [ხაზი 51-53] მიუთითებს იმაზე, რომ როდესაც პიკი დაკმაყოფილდება და მნიშვნელობები იწყებს კლებას პიკის გარშემო, მაშინ დროშა = 0 და for loop აგრძელებს უფრო მეტი მწვერვალის ძებნას.
  • პარამეტრები/აუცილებელი ღირებულებები:

    • 'aRval': შეგროვებული მონაცემები საცდელი ეტაპიდან.
    • 'thresh': არჩეული მნიშვნელობა, რომელიც მიუთითებს მის ზემოთ aRval– ზე პიკს.

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

შექმენით მეორე Matlab ფაილი "thresh_analyze"

ნაბიჯი 5: სასამართლო 1: არავითარი Aliasing

სასამართლო 1: არავითარი Aliasing
სასამართლო 1: არავითარი Aliasing
სასამართლო 1: არავითარი Aliasing
სასამართლო 1: არავითარი Aliasing

ნახაზი 1: მონაცემთა საცდელი პერიოდი @ გადადება 200 სურათი 2: ახალი ანალიზირებული მონაცემები

დაგვიანების პარამეტრი: 200

მწვერვალები:

რაოდენობა = 45

რევოლუციების რაოდენობა წუთში:

45 რევოლუცია/წუთი

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

  1. შეაერთეთ Arduino თქვენს ლეპტოპთან.

    Arduino კოდის შეფერხება დააყენეთ "200" -ზე. დააჭირეთ ატვირთვას (პროგრამის ზედა მარცხენა კუთხეში)

  2. გადადით თქვენს Matlab ფაილში HallRT [ხაზი 37] და შეცვალეთ ცვლადი 'delayTime' 200 -მდე.
  3. გაუშვით HallRT პროგრამა.
  4. შეინახეთ Matlab ფაილი "delay_200" განყოფილებაში. (ფიგურის შენახვა)
  5. ჩატვირთეთ delay_200.mat ფაილი.
  6. გაუშვით thresh_analyze პროგრამა. (ფიგურის შენახვა)

ნაბიჯი 6: სასამართლო 2: სენსორის გასწორება (i)

სასამართლო 2: სენსორის გასწორება (i)
სასამართლო 2: სენსორის გასწორება (i)
სასამართლო 2: სენსორის გასწორება (i)
სასამართლო 2: სენსორის გასწორება (i)

სურათი 1: მონაცემთა სასამართლო @ დაგვიანებით 50

ნახაზი 2: ახლად გაანალიზებული მონაცემები

გვიანების პარამეტრი: 50-მწვერვალები:

რაოდენობა = 52

რევოლუციების რაოდენობა წუთში:

52 რევოლუცია/წუთი

---------------------------------------------------------------------------------------------------------

ქვე-ნაბიჯები:

  1. შეაერთეთ Arduino თქვენს ლეპტოპთან.

    Arduino კოდის შეფერხება დააყენეთ "50" -ზე. დააჭირეთ ატვირთვას (პროგრამის ზედა მარცხენა კუთხეში)

  2. გადადით თქვენს Matlab ფაილში HallRT [ხაზი 37] და შეცვალეთ ცვლადი 'delayTime' 50 -მდე.
  3. გაუშვით HallRT პროგრამა.
  4. შეინახეთ Matlab ფაილი "delay_50" განყოფილებაში. (ფიგურის შენახვა)
  5. ჩატვირთეთ delay_50.mat ფაილი.
  6. გაუშვით thresh_analyze პროგრამა. (ფიგურის შენახვა)

ნაბიჯი 7: სასამართლო 3: სენსორის გასწორება (ii)

სასამართლო 3: სენსორის გასწორება (ii)
სასამართლო 3: სენსორის გასწორება (ii)
სასამართლო 3: სენსორის გასწორება (ii)
სასამართლო 3: სენსორის გასწორება (ii)

დიაგრამა 1: მონაცემთა საცდელი @ გადადება 100 სურათი 2: ახალი ანალიზირებული მონაცემები

დაგვიანების პარამეტრი: 100 პიკი:

რაოდენობა = 54

რევოლუციების რაოდენობა წუთში:

54 რევოლუცია/წუთი

---------------------------------------------------- ------------------------------------------------------ ------- ქვე-ნაბიჯები:

  1. შეაერთეთ Arduino თქვენს ლეპტოპთან.

    Arduino კოდის შეფერხება დააყენეთ "100" -ზე. დააჭირეთ ატვირთვას (პროგრამის ზედა მარცხენა კუთხეში). '

  2. გადადით თქვენს Matlab ფაილში HallRT [ხაზი 37] და შეცვალეთ ცვლადი 'delayTime' 100 -ზე.
  3. გაუშვით HallRT პროგრამა.
  4. შეინახეთ Matlab ფაილი "delay_100" განყოფილებაში. (ფიგურის შენახვა)
  5. ჩატვირთეთ delay_100.mat ფაილი.
  6. გაუშვით thresh_analyze პროგრამა. (ფიგურის შენახვა)

ნაბიჯი 8: სასამართლო 4: სენსორის გასწორება (iii)

სასამართლო 4: სენსორის გასწორება (iii)
სასამართლო 4: სენსორის გასწორება (iii)
სასამართლო 4: სენსორის გასწორება (iii)
სასამართლო 4: სენსორის გასწორება (iii)

ნახაზი 1: მონაცემთა საცდელი @ გადადება 300 სურათი 2: ახალი ანალიზირებული მონაცემები

-გვიანების პარამეტრი: 300

მწვერვალები:

დათვლა = 32

რევოლუციების რაოდენობა წუთში:

32 რევოლუცია/წუთი

------------------------------------------------------ ------------------------------------------------------ ------- ქვე-ნაბიჯები:

  1. შეაერთეთ Arduino თქვენს ლეპტოპთან.

    Arduino კოდის შეფერხება დააყენეთ "300" -ზე. დააჭირეთ ატვირთვას (პროგრამის ზედა მარცხენა კუთხეში)

  2. გადადით თქვენს Matlab ფაილში HallRT [ხაზი 37] და შეცვალეთ ცვლადი 'delayTime' 300 -მდე.
  3. გაუშვით HallRT პროგრამა.
  4. შეინახეთ Matlab ფაილი "delay_300" განყოფილებაში. (ფიგურის შენახვა)
  5. ჩატვირთეთ delay_300.mat ფაილი.
  6. გაუშვით thresh_analyze პროგრამა. (ფიგურის შენახვა)

გირჩევთ: