Სარჩევი:
- ნაბიჯი 1: მიზნები
- ნაბიჯი 2: მასალები
- ნაბიჯი 3: წინასწარი კოდირება: შეაერთეთ თქვენი მიკრო: ბიტი
- ნაბიჯი 4: ნაბიჯი 0: კოდის ნაკადი
- ნაბიჯი 5: ნაბიჯი 1: ცვლადების განსაზღვრა
- ნაბიჯი 6: ნაბიჯი 2: გადაიყვანეთ დახრის მნიშვნელობები დონეებზე
- ნაბიჯი 7: ნაბიჯი 3: შეადგინეთ დახრის დონეები
- ნაბიჯი 8: ნაბიჯი 4: ჩაწერეთ LEDPlotList ფუნქციები
- ნაბიჯი 9: ნაბიჯი 5: შეადგინეთ LED მატრიცა თითოეული შემთხვევისთვის
- ნაბიჯი 10: ნაბიჯი 6: დაწერეთ კალიბრაციის ფუნქციები
- ნაბიჯი 11: ნაბიჯი 7: ჩაწერეთ სახელმწიფო ფუნქცია
- ნაბიჯი 12: ნაბიჯი 8: ყველაფერი ერთად ერთად ნაწილი 1
- ნაბიჯი 13: ნაბიჯი 9: ყველაფერი ერთად ერთად ნაწილი 2
- ნაბიჯი 14: ნაბიჯი 10: შეკრება
- ნაბიჯი 15: წყარო
ვიდეო: შექმენით ელექტრო სულის დონე: 15 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:20
გამოიყენეთ ეს სულიერი დონე, რომ სწრაფად და მარტივად აჩვენოთ მიმაგრებული ნებისმიერი ობიექტის დახრილობა!
შექმნილია ქეითლინის მიერ რაფლის ინსტიტუტიდან.
ნაბიჯი 1: მიზნები
ისწავლეთ მიკრო: ბიტის ჩამონტაჟებული ამაჩქარებლის წაკითხვა.
ისწავლეთ მიკრო მუშაობა: ბიტის 5x5 LED ეკრანი!
ნაბიჯი 2: მასალები
1 x BBC მიკრო: ბიტი
1 x მიკრო USB კაბელი
2 x AA ბატარეები
1 x ორმაგი AA ბატარეის პაკეტი
ნაბიჯი 3: წინასწარი კოდირება: შეაერთეთ თქვენი მიკრო: ბიტი
- შეაერთეთ BBC მიკრო: ბიტი თქვენს კომპიუტერს მიკრო USB კაბელის გამოყენებით.
- წვდომა javascript რედაქტორზე მიკრო: bit- ზე makecode.microbit.org.
ნაბიჯი 4: ნაბიჯი 0: კოდის ნაკადი
სანამ დავიწყებთ კოდის წერას, ჩვენ უნდა გადავწყვიტოთ რისი მიღწევა გვინდა პროგრამით და რა თანმიმდევრობით უნდა იმუშაოს თითოეულმა კომპონენტმა.
ელექტრული სულის დონისთვის, ნაბიჯები, რომელსაც ჩვენ გადავიღებთ კოდში თითოეული მარყუჟისთვის არის:
- წაიკითხეთ დახრის კითხვები ამაჩქარებელიდან.
- გადაიყვანეთ დახრის საკითხები დახრის დონეზე, რათა გამოჩნდეს LED მატრიცაზე.
- შეამოწმეთ წინა მარყუჟის დახრის დონის კითხვის ცვლილება.
- შექმენით LED კოორდინატების მასივი სხვადასხვა დახრის შემთხვევებისა და მიმართულებებისათვის.
- გამოსახეთ LED კოორდინატები მიკრო: ბიტ LED მატრიცაზე.
რამდენიმე დამატებითი ფუნქცია, რომელიც უნდა შევიტანოთ არის:
- კალიბრაცია საწყისი დახრის პოზიციისთვის.
- ბრუნდება ნაგულისხმევი დახრის კალიბრაციაზე.
ნაბიჯი 5: ნაბიჯი 1: ცვლადების განსაზღვრა
ჩვენ ვიწყებთ ცვლადების განსაზღვრით, როგორც ეს ნაჩვენებია. რამდენიმე ცვლადის გაყოფა არის:
- tiltList: მასივი, რომელიც ინახავს დახრის ხარისხს 0-4 მნიშვნელობების მიხედვით (მარცხნივ, მარჯვნივ, წინ, უკან)
- tiltBoundary: საზღვარი პირველი დახრის დონეს შორის 0 (დახრის გარეშე) და 1 (მცირე დახრილობა)
- prevState: მასივი, რომელიც ინახავს მიკრო დახრის მნიშვნელობებს: ბიტი წინა მარყუჟიდან იმავე ფორმატში, როგორც tiltList, რომელიც გამოიყენება გამეორებებს შორის დახრის ცვლილების შესამოწმებლად
- ledPlotList: ნაკვეთი led კოორდინატთა მასივები სახით (x, y). მასივის განსაზღვრისათვის, ჩვენ ვიყენებთ ტიპის ნომერს , რათა აღვნიშნოთ ტიპის ცვლადების წყვეტილი მასივი: ნომერი.
ნაბიჯი 6: ნაბიჯი 2: გადაიყვანეთ დახრის მნიშვნელობები დონეებზე
ვინაიდან 5x5 LED მატრიცას შეუძლია მხოლოდ ამდენი ინფორმაციის ჩვენება, დახრის ფაქტობრივი მნიშვნელობები არ გამოდგება ჩვენებისათვის.
ამის ნაცვლად, ფუნქცია tiltExtent () იღებს პარამეტრს num, რომელიც ეხება ამაღლების მნიშვნელობის დახრის მნიშვნელობას და ამ დახრის მნიშვნელობებს (რიცხვს) აქცევს დახრის დონემდე 0 -დან 4 -მდე.
0 მიუთითებს მოცემულ მიმართულებით დახრილობაზე და 4 მიუთითებს ძალიან დიდ დახრილობაზე, ხოლო -1 ბრუნდება შეცდომის დროს.
აქ tiltBoundary და tiltSensitivity გამოიყენება როგორც სასაზღვრო მნიშვნელობები დახრის დონეს შორის.
ნაბიჯი 7: ნაბიჯი 3: შეადგინეთ დახრის დონეები
ორი ფუნქცია checkRoll () და checkPitch () ჩაწერს დახრის დონეს მიღებული tiltExtent ()-დან tiltList– ში როლისთვის (მარცხნივ – მარჯვნივ) და მოედანზე (წინ – უკან) ღერძებზე.
დახრის მნიშვნელობების გამოყენებამდე, ჩვენ ვაკალიბრებთ მათ ნულოვანი მნიშვნელობის გამოყენებით როგორც სიმაღლისთვის (zeroPitch), ისე როლისთვის (zeroRoll), რომელიც მიღებულია მოგვიანებით დაწერილი კალიბრაციის ფუნქციით.
ვინაიდან აქსელერომეტრის მაჩვენებლები უარყოფითია როგორც მარცხენა, ისე წინ გადახრისათვის, ჩვენ უნდა გამოვიყენოთ Math.abs () ფუნქცია, რათა მივიღოთ tiltExtent () ფუნქციისათვის მინიჭებული უარყოფითი მნიშვნელობის მოდული, როგორც პარამეტრი ამ ორი მიმართულებისათვის.
ნაბიჯი 8: ნაბიჯი 4: ჩაწერეთ LEDPlotList ფუნქციები
TiltList– ში დახრილობის დონის მოპოვების შემდეგ ჩვენ შეგვიძლია დავწეროთ led გრაფიკული ფუნქციები სხვადასხვა შემთხვევებისათვის, რომლებიც შეიძლება წარმოიშვას, კერძოდ
- plotSingle (): დახრილობა მხოლოდ ერთი მიმართულებით, მოცემული მიმართულებით დახრის მოცულობის გათვალისწინებით, როგორც პარამეტრი.
- plotDiagonal (): დახრილობა ერთი და იმავე სიდიდის ორი მიმართულებით, ორივე მიმართულებით პარამეტრის მიხედვით დახრის ხარისხი.
- plotUnequal (): დახრილი ორი სიდიდის ორი მიმართულებით, თითოეული მიმართულებით დახრის მოცულობის გათვალისწინებით, როგორც პარამეტრი. პირველად იყენებს plotDiagonal () - ს და შემდეგ ამატებს ledPlotList მასივს.
ეს შეთქმულების ფუნქციები წერს led კოორდინატების მასივს ledPlotList– ში, რომელიც მოგვიანებით უნდა იყოს გამოსახული.
ნაბიჯი 9: ნაბიჯი 5: შეადგინეთ LED მატრიცა თითოეული შემთხვევისთვის
მე –4 საფეხურის სამი შემთხვევიდან გამოსახული ფუნქციების გამოყენებით, ჩვენ შეგვიძლია ახლა დავხატოთ ფაქტობრივი LED მატრიცა დახრის დონის სხვადასხვა შესაძლო კომბინაციისთვის. რადგან მე –4 საფეხურის სამი ფუნქცია არ ახდენს დისკრიმინაციას მიმართულებით, ჩვენ უნდა შევცვალოთ LED მატრიცაში გადატანილი საკოორდინატო მნიშვნელობები LED– ების სწორი მიმართულებით გამოსახვის მიზნით.
PlotResult () შეიცავს მრავალ პირობას, რომელიც ამოწმებს დახრის ტიპს და შესაბამისად ადგენს LED მატრიცას led.plot (x, y) გამოყენებით. დახრის შესაძლო კომბინაციებია:
ერთი მიმართულება: მხოლოდ მარცხნივ ან მხოლოდ მარჯვნივ
ერთი მიმართულება: მხოლოდ წინ ან მხოლოდ უკან
ორი მიმართულება: წინ-მარცხნივ ან უკან-მარცხნივ
ორი მიმართულება: წინ-მარჯვნივ ან უკან-მარჯვნივ
შენიშვნა: ორი მიმართულებით დახრისთვის, თითოეულ კომბინაციას შეიძლება ჰქონდეს იგივე ან განსხვავებული სიდიდე (შემოწმებულია maxX და maxY– ს შედარების გზით) და, შესაბამისად, ნაჩვენებია plotDiagonal () ან plotUnequal () შესაბამისად.
ნაბიჯი 10: ნაბიჯი 6: დაწერეთ კალიბრაციის ფუნქციები
კოდის ძირითადი ნაწილის დასრულების შემდეგ, ჩვენ დავამატებთ calibTilt () და resetTilt () ფუნქციებს.
calibTilt () მომხმარებლებს საშუალებას აძლევს მიკრო: ბიტის ამჟამინდელ პოზიციაზე დახრის ნული
resetTilt () აღადგენს დაფის კალიბრაციას პირვანდელ მდგომარეობაში.
ნაბიჯი 11: ნაბიჯი 7: ჩაწერეთ სახელმწიფო ფუნქცია
ჩვენ ვამატებთ უბრალო ფუნქციას checkState (), რათა შევამოწმოთ შეიცვალა თუ არა დახრის დონე წინა გამეორებისგან.
თუ არ არის შეცვლილი დახრის დონეები წინა გამეორებიდან, ანუ stateChange == 0, ჩვენ შეგვიძლია პირდაპირ გადავიდეთ შემდეგ გამეორებაზე და გამოვტოვოთ LED მატრიცის შედგენა, რაც ამცირებს გამოთვლას.
ნაბიჯი 12: ნაბიჯი 8: ყველაფერი ერთად ერთად ნაწილი 1
ახლა ჩვენ შეგვიძლია საბოლოოდ მოვათავსოთ ყველა საჭირო ფუნქცია მიკროში: ბიტის უსასრულო მარყუჟში მისი განმეორებით გასაშვებად.
პირველ რიგში, ჩვენ ვაყენებთ ღილაკს A და B მიკროზე: ბიტი calibTilt () და resetTilt () შესაბამისად, შესაბამისად input.onButtonPressed () გამოყენებით და ვხატავთ LED მატრიცაზე კალიბრაციის დასრულების შემდეგ.
ნაბიჯი 13: ნაბიჯი 9: ყველაფერი ერთად ერთად ნაწილი 2
შემდეგი გაუშვით საჭირო ფუნქციები ჩვენი კოდის ნაკადის მიხედვით ნაბიჯი 0 და შეამოწმეთ მდგომარეობის ცვლილება (რაც იმას ნიშნავს, რომ არსებობს ცვლილება მიკრო: bit ბოლო განმეორებიდან).
თუ შეიცვლება დახრის დონეები, ანუ stateChange == 1, კოდი განაახლებს prevState ახალ დახრის დონეს და დააყენებს მდგომარეობას შეცვლის 0 -ს მომდევნო გამეორებისთვის და ასახავს განახლებული დახრის დონეს LED მატრიცაზე PlotResult () - ის გამოყენებით.
ნაბიჯი 14: ნაბიჯი 10: შეკრება
შეავსეთ დასრულებული კოდი თქვენს მიკრო: ბიტზე.
მიამაგრეთ თქვენი მიკრო: ბიტი და ბატარეის პაკეტი უსაფრთხოდ ნებისმიერ ობიექტზე და ის მზადაა გამოსაყენებლად!
გასაოცარია
გაერთეთ თქვენი ელექტრული სულისკვეთებით! და სანამ ამას აკეთებთ, რატომ არ ცდილობთ გააფართოვოთ დახრის სენსორის შესაძლებლობები ან თუნდაც ის თამაშად აქციოთ?
ეს სტატია არის TINKERCADEMY– დან.
ნაბიჯი 15: წყარო
ეს სტატია არის:
თუ თქვენ გაქვთ რაიმე შეკითხვა, შეგიძლიათ დაუკავშირდეთ : [email protected].
გირჩევთ:
წვრილმანი ციფრული სულის დონე: 5 ნაბიჯი (სურათებით)
წვრილმანი ციფრული სულის დონე: ამ პროექტში ჩვენ უფრო ახლოს შევხედავთ ამაჩქარებლის IC- ებს და გავარკვევთ, თუ როგორ შეგვიძლია მათი გამოყენება არდუინოსთან ერთად. ამის შემდეგ ჩვენ გავაერთიანებთ ასეთ IC– ს რამდენიმე დამატებით კომპონენტთან და 3D ბეჭდვით დანართთან, რათა შევქმნათ ციფრული
ელექტრო ელექტრო ცხელი ძაღლის გაზქურა: 14 ნაბიჯი (სურათებით)
ელექტრო ელექტრო ცხელი ძაღლის ქურა: როდესაც მე ვიყავი ბაკალავრიატის ფიზიკის ფაკულტეტი, ჩვენ ვამზადებდით ცხელ ძაღლებს, თუ ისინი პირდაპირ 120 ვოლტზე შევიყვანთ. ეს იყო შედარებით სახიფათო ოპერაცია, რადგან ჩვენ უბრალოდ დავამაგრეთ გაფართოების კაბელის ბოლოები ორ ჭანჭიკზე, რომლებიც ჩასმული იყო
შექმენით საკუთარი ელექტრო გიტარა!: 8 ნაბიჯი (სურათებით)
შექმენით თქვენი საკუთარი ელექტრო გიტარა!: ოდესმე გიყურებიათ გიტარაზე და გაგიკვირდებათ: "როგორ აკეთებენ ამას?" ან იფიქრეთ საკუთარ თავზე: "მე დავდებ იმას, რომ შემეძლო საკუთარი გიტარის აშენება", მაგრამ რეალურად არასოდეს მიცდია? წლების განმავლობაში მე ავაშენე რამდენიმე ელექტრო გიტარა და საცდელი გზით
შექმენით ელექტრო-თერმინი: 4 ნაბიჯი (სურათებით)
შექმენით Electro-Theremin: Goals ისწავლეთ გამოიყენოთ ანალოგური სენსორი მიკრო: ბიტით. გააკეთეთ ელექტრო-თერმინი
როგორ გამოვყოთ ელექტრო სკუტერი ელექტრო ნაწილებისთვის .: 6 ნაბიჯი
როგორ გამოვყოთ ელექტრო სკუტერი ელექტრო ნაწილებისთვის .: ეს არის გზა, რომლითაც მე ვიშორებ მეორადი ელექტრო სკუტერს ელექტრო მთის დაფის ასაშენებლად საჭირო ნაწილებისთვის. (იდეა მოდის > > https: // www .instructables.com/id/Electric-Mountain-Board/) მეორადი შეძენის მიზეზი არის