Სარჩევი:

ჯეკლიტი: 6 ნაბიჯი
ჯეკლიტი: 6 ნაბიჯი

ვიდეო: ჯეკლიტი: 6 ნაბიჯი

ვიდეო: ჯეკლიტი: 6 ნაბიჯი
ვიდეო: Голубая стрела (1958) фильм 2024, ივლისი
Anonim
ჯეკლიტი
ჯეკლიტი

ეს პროექტი განახორციელეს სტუდენტებმა, რომლებიც მიეკუთვნებიან პარტნიორობას ფრემონტის აკადემიის ქალბატონებსა და პომონას კოლეჯის ელექტრონიკის 128 კურსს შორის. ეს პროექტი მიზნად ისახავდა hex-ware ტექნიკის ინტეგრირებას მხიარულ ქურთუკში, რომელიც რიტმში ანათებს მუსიკას. ჩვენს "JackLit" - ს შეუძლია მოისმინოს მუსიკა მიკროფონით და იყენებს Fast Fourier- ის გარდაქმნის კოდს მუსიკაში სიხშირეების დასალაგებლად, რაც შეიძლება გამოითვალოს და გამოიყენოს ქურთუკზე კონკრეტული განათების ჯგუფების გასარჩევად. ამით, ელექტროლუმინესცენციური პანელის ჯგუფები, პარალელურად მავთულხლართები, ანათებენ ნებისმიერი სიმღერის რიტმს, რომელიც დაფუძნებულია მიკროფონის მოსმენის სიხშირეების დიაპაზონზე. ამ პროექტის გამოყენება არის გასართობი ქურთუკი, რომელსაც შეუძლია აანთოს ნებისმიერი სიმღერის რიტმი. ის შეიძლება ატაროს სოციალურ ღონისძიებებზე ან გამოიყენოს ტანსაცმლის სხვადასხვა ნაწარმი. ტექნოლოგია შეიძლება გამოყენებულ იქნას ფეხსაცმელში, შარვალში, ქუდებში და სხვა. ის ასევე შეიძლება გამოყენებულ იქნას შოუებსა და კონცერტებზე განათების შესაქმნელად.

ნაბიჯი 1: მასალები

ყველა მასალა შეგიძლიათ იხილოთ adafruit.com და amazon.com.

  • 10 სმ X10 სმ თეთრი ელექტროლიუმინესცენციური პანელი (x3)
  • 10 სმ X10 სმ ლურჯი ელექტროლიუმინესცენციური პანელი (x4)
  • 10cmX10cm წყლის ელექტროლიუმინესცენციური პანელი (x3)
  • 20cmX15cm წყლის ელექტროლიუმინესცენციური პანელი (x2)
  • 100 სმ მწვანე ელექტროლუმინესცენციური ლენტი (x3)
  • 100 სმ წითელი ელექტროლუმინესცენციური ლენტი (x4)
  • 100 სმ ლურჯი ელექტროლუმინესცენციური ლენტი (x2)
  • 100 სმ თეთრი ელექტროლუმინესცენციური ლენტი (x1)
  • 12 ვოლტიანი ინვერტორი (x4)
  • SainSmart 4 არხის სარელეო მოდული (x1)
  • ბატარეა 9 ვოლტი (x5)
  • 9 ვოლტიანი ვადამდელი კონექტორი (x5)
  • ბევრი მავთული
  • HexWear

ნაბიჯი 2: Arduino პროგრამული უზრუნველყოფა

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

  1. (მხოლოდ Windows- ისთვის, Mac მომხმარებლებს შეუძლიათ გამოტოვონ ეს ნაბიჯი) დააინსტალირეთ დრაივერი https://www.redgerbera.com/pages/hexwear-driver-i… გადმოწერეთ და დააინსტალირეთ დრაივერი (.exe ფაილი ჩამოთვლილია მე –2 საფეხურზე დაკავშირებული RedGerbera გვერდის თავზე).
  2. დააინსტალირეთ საჭირო ბიბლიოთეკა Hexware– სთვის. გახსენით Arduino IDE. "ფაილში" აირჩიეთ "პარამეტრები". დამატებითი დაფების მენეჯერის URL– ებისთვის გათვალისწინებულ სივრცეში ჩასვით https://github.com/RedGerbera/Gerbera-Boards/raw/…. შემდეგ დააჭირეთ "OK". გადადით ინსტრუმენტებზე -> დაფა: -> დაფის მენეჯერი. ზედა მარცხენა კუთხის მენიუდან აირჩიეთ "წვლილი". მოძებნეთ და შემდეგ დააწკაპუნეთ გერბერას დაფაზე და დააწკაპუნეთ ინსტალაციაზე. დატოვეთ და გახსენით Arduino IDE. ბიბლიოთეკის სწორად დაყენების უზრუნველსაყოფად, გადადით Tools -> Board და გადაახვიეთ მენიუს ბოლოში. თქვენ უნდა ნახოთ განყოფილება სახელწოდებით "გერბერა დაფები", რომლის ქვეშაც მინიმუმ უნდა გამოჩნდეს HexWear (თუ არა უფრო მეტი დაფა, როგორიცაა mini-HexWear).

ნაბიჯი 3: ინვერტორული განლაგება

ინვერტორული განლაგება
ინვერტორული განლაგება

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

ნაბიჯი 4: სარელეო განლაგება

სარელეო განლაგება
სარელეო განლაგება

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

ნაბიჯი 5: ააშენეთ

ააშენე!
ააშენე!

შეაერთეთ 9 ვოლტიანი ბატარეები და ინვერტორები, როგორც ეს მოცემულია ფიგურაში 1. ხუთი 9 ვოლტი უნდა იყოს პარალელურად და დაუკავშირდით ოთხ ინვერტორს ასევე პარალელურად. ინვერტორებიდან გამომავალი მავთულები უნდა იყოს დაკავშირებული პარალელურად და ფაზაში. ერთ -ერთი ინვერტორული გამომავალი პარალელური მავთული უნდა განზე იყოს, რათა პირდაპირ დაუკავშირდეს ქურთუკზე არსებულ ელექტროლიუმინესცენციურ პანელებს. მეორე იქნება დაკავშირებული სარელეო მოდულთან. გაითვალისწინეთ, რომელი მიდის სად არის თვითნებური, რადგან საქმე გვაქვს AC წრედთან. მე –4 ნაბიჯში ილუსტრირებული მსგავსად, თქვენ უნდა გაყოთ პარალელური მავთულები სამად, თითოეული მათგანი დააკავშიროთ ოთხ კონცენტრატორს. ერთი გადამრთველი გამოუყენებელი დარჩება. იხილეთ ინსტრუქციები adafruit.com ან amazon.com, რომ იცოდეთ სად უნდა დაუკავშირდეს თქვენი მავთულები გადამრთველებს. კიდევ ერთი მავთული უნდა იყოს დაკავშირებული თითოეულ გადამრთველთან, რომელიც გამოყოფილი იქნება ქურთუკზე ელექტროლიუმინესცენტურ პანელებთან დასაკავშირებლად. დარწმუნდით, რომ სარელეო მოდული სათანადოდ დაუკავშირეთ Hex– ს, როგორც ეს ნაჩვენებია მე –4 ნაბიჯში და ზემოთ.

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

ნაბიჯი 6: კოდირება

ჩვენი კოდი იყენებს Arduino Fast Fourier Transform (fft) ბიბლიოთეკას, რათა ხმაური დაიშალოს იმ სიხშირეებში, რომელსაც Hex ისმენს. ფურიეს გარდაქმნების უკან არსებული მათემატიკა გარკვეულწილად რთულია, მაგრამ თავად პროცესი არ არის ძალიან რთული. პირველი, Hex ისმენს ხმაურს, რომელიც სინამდვილეში მრავალი განსხვავებული სიხშირის კომბინაციაა. ექვსკუთხედს შეუძლია მოუსმინოს მხოლოდ გარკვეული დროის განმავლობაში, სანამ მან უნდა გაასუფთაოს ყველა მონაცემი და ისევ და ისევ, ასე რომ იმისათვის, რომ მან ხმაური გაიგოს, ხმაურის სიხშირე უნდა იყოს იმ დროის უმეტეს ნახევარში, რასაც Hex უსმენს მას შემდეგ ჰექსს უნდა შეეძლოს მისი ორჯერ მოსმენა, რომ იცოდეს, რომ ეს არის საკუთარი სიხშირე. ჩვენ რომ სუფთა ტონი დავხატოთ ამპლიტუდისა და დროის წინააღმდეგ, ჩვენ ვიხილავთ სინუსის ტალღას. ვინაიდან სინამდვილეში სუფთა ტონები არ არის გავრცელებული, რასაც ჩვენ ვხედავთ, საკმაოდ დამაბნეველი და არარეგულარული უღიმღამო ხაზია. თუმცა, ჩვენ შეგვიძლია შევაფასოთ ეს მრავალი განსხვავებული სუფთა ტონის სიხშირით საკმაოდ მაღალი სიზუსტით. ეს არის ის, რასაც fft ბიბლიოთეკა აკეთებს: ის იღებს ხმაურს და ანაწილებს მას სხვადასხვა სიხშირეებად, რომელსაც ისმენს. ამ პროცესში, ზოგიერთი სიხშირე, რომელსაც fft ბიბლიოთეკა იყენებს ფაქტობრივი ხმაურის დასაახლოებლად, უფრო დიდი ამპლიტუდა აქვს ვიდრე სხვებს; ანუ ზოგი სხვებზე ხმამაღალია. ამრიგად, თითოეულ სიხშირეს, რომელსაც ექვსას შეუძლია მოისმინოს, ასევე აქვს შესაბამისი ამპლიტუდა, ანუ მოცულობა.

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

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

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

გირჩევთ: