Სარჩევი:
- ნაბიჯი 1: კონცეფციები
- ნაბიჯი 2: Breadboard Protoyping
- ნაბიჯი 3: დამზადება
- ნაბიჯი 4: CAD მაკეტი და განლაგება
- ნაბიჯი 5: PCB დიზაინი
- ნაბიჯი 6: ეკრანის დამონტაჟება
- ნაბიჯი 7: დანართი
- ნაბიჯი 8: უჰ-ოჰ
- ნაბიჯი 9: ხატვა
- ნაბიჯი 10: გაყვანილობა
- ნაბიჯი 11: Arduino კოდი
- ნაბიჯი 12: დასკვნა
ვიდეო: Arduino MIDI ფეხის კონტროლერი: 12 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
მე ახლახანს შევქმენი ეს MIDI კონტროლერი, რათა გამოვიყენო ფრაზის მარყუჟი, რომელიც ჩაშენებულია Boss DD500 დაგვიანებით პედლში. მე ვაკონტროლებ ჩემს მთელ გიტარის აპარატს Behringer FCB MIDI დაფის გამოყენებით და ეს მაძლევს საშუალებას შევცვალო პატჩები შეფერხების პედლზე ეფექტების მარყუჟში, ამავდროულად არხების გადართვა.
DD500– ს აქვს ჩამონტაჟებული ძალიან ძირითადი მარყუჟის ფუნქცია, მაგრამ მისი ერთ – ერთი ნაკლი ის არის, რომ როდესაც მარყუჟი აქტიურია, ის კონტროლდება პედლის ფეხის გადამრთველებით. ეს ნიშნავს, რომ თქვენ არ შეგიძლიათ შეცვალოთ პედლებიანი პედლები, სანამ მარყუჟი აქტიურია, რადგან ის არსებითად ასახავს ფეხის გადამრთველების ფუნქციებს. MIDI– ს გამოყენებისას, ეს შეზღუდვა არ არსებობს, რადგან ეს უბრალოდ ფიზიკური საკითხია. ეს იმას ნიშნავდა, რომ ჩემს ძირითად MIDI კონტროლერზე 5 ფეხის გადამრთველი დაჯავშნა მარყუჟისთვის და ამიტომ გადავწყვიტე ავაშენო ცალკე კონტროლერი მათთვის.
ამის საწყისი გეგმა იყო ავიღო პატარა ჰამონდის გარსი და ჩავსვა 5 ფეხის გადამრთველი და შევისწავლე არდუინოს ძირითადი კოდირება. როდესაც მე დავიწყე მეტის სწავლა და ჩემი კოდი მუშაობდა, ის დამთავრდა მოტივაციით, რომ მეცადა მეტი რამ და შემდეგ ის ძირითადად თოვლში გადაიზარდა რაღაც უფრო დიდში.
ნაბიჯი 1: კონცეფციები
ერთ -ერთი ადრეული იდეა იყო მხოლოდ 5 ღილაკი ზედიზედ სტატუსის LED- ებით. ეს იყო საკმაოდ მარტივი დაცინვა პურის დაფაზე არდუინოსთან ერთად. ახალი მახასიათებლებისა და აპარატურის დამატება დასრულდა ის პროცესი, რომელშიც მე მუდმივად ვაპროექტებდი და ვამუშავებდი ფიზიკურ განლაგებას ქაღალდზე და ვამუშავებდი პურის დაფაზე. ბევრი დაგეგმვის მიუხედავადაც კი, ბევრი სამუშაო თავიდანვე გარკვეულწილად შესრულდა.
ზემოთ მოყვანილი 2 სურათი გვიჩვენებს ქაღალდზე შესრულებულ პირველ ნახატს, რამაც წამოაყენა იდეა, რასაც მოჰყვა ერთთვიანი ჩანაწერები, რომლებიც მოჰყვა ფიზიკურ და PCB განლაგებას.
ნაბიჯი 2: Breadboard Protoyping
მთელი პროექტი დაფუძნებული იყო დაფაზე და სრულად იყო შემოწმებული, რათა დარწმუნებულიყო, რომ ის სრულად ფუნქციონირებდა DD500– ით, სანამ სამუდამოდ დაიწყება რაიმე სამუშაო. კოდს დაემატა ზოგიერთი დამატებითი ფუნქცია, რამაც კონტროლერს მისცა DD500– ის დამატებითი ფუნქციები. ეს უფრო სრულად იქნება განხილული კოდის განყოფილებაში.
პედლს აქვს 5 ფეხის გადამრთველი, 4 სტატუსის LED, 5 I2C LCD ეკრანი და აკონტროლებს Arduino Nano Every. ის ენერგიას იღებს 9V გიტარის პედლებიანი PSU– დან ცალკეული გარღვევის ყუთის საშუალებით, რომელიც ატარებს ამ ძალას MIDI კაბელზე 2 ქინძისთავის გამოყენებით, რომლებიც ჩვეულებრივ არ გამოიყენება MIDI კონექტორზე.
ნაბიჯი 3: დამზადება
მე გადავხედე პროექტის განსახლების უამრავ შესაძლო შემთხვევას და განვიხილე იდეაც, რომ შევეცადე საკუთარი საქმე გადამეხვია ალუმინის ფურცლებიდან. საბოლოოდ დავბინავდი ჰამონდის გარსზე, რომელიც საკმარისად ფართო იყო იმისათვის, რომ მოთავსებულიყო ჩემს მიერ არჩეული 5 16X2 LCD ეკრანი.
ფეხის გადამრთველები იყო ზოგადი მომენტალური რბილი შეხების კონცენტრატორები.
ამ ეტაპზე მე გადავწყვიტე, რომ ეკრანის ჩარჩოები შემექმნა ისე, რომ წინა მხარე სუფთა ყოფილიყო, რადგან მე დრემლით ხელით ვჭრიდი ეკრანის ხვრელებს და ვიცოდი, რომ სავარაუდოდ იქნებოდა რამდენიმე უბანი, რომელიც არ იყო სრულყოფილი. მე ეს მოჭრილი მაქვს ადგილობრივი დიზაინის სტუდიის მიერ, რომელიც ლაზერულ ჭრას აკეთებს, ჯერ მუყაოს შაბლონებს, რომ დავრწმუნდე, რომ ჩემი ზომები სწორია, შემდეგ კი 3 მმ თეთრი აკრილის ფინალში.
ნაბიჯი 4: CAD მაკეტი და განლაგება
ჩემი ქაღალდის ესკიზებიდან მე გამოვიყენე Inkscape ყველა ფიზიკური კომპონენტის დასადგენად და ზომისა და პოზიციის დასასრულებლად. მე ასევე გამოვიდა ეკრანის დამონტაჟების მეთოდი ამ ეტაპზე. წინა მხარეს ხილული ჭანჭიკების რაოდენობის შესამცირებლად, მე გადავწყვიტე, რომ ყველა ეკრანი უკანა მხრიდან დავამონტაჟო რამდენიმე ალუმინის ფირფიტაზე და შემდეგ დამჭირდებოდა მხოლოდ 4 ჭანჭიკი თითო ფირფიტაზე, რომ მიმაგრებულიყო შიგთავსში, რაც ასევე ეკრანის ჩარჩოებს დაიჭერს ადგილზე.
ნაბიჯი 5: PCB დიზაინი
PCB– ის შესაქმნელად გამოვიყენე ვებ – გვერდი სახელწოდებით EasyEDA. მას აქვს რედაქტორის გარემო, რომელშიც თქვენ შეგიძლიათ დახაზოთ თქვენი კომპონენტების სქემატური სქემა, გადააკეთოთ იგი PCB განლაგებად და შემდეგ გადაიტანოთ იგი პირდაპირ JLCPCB– ში დაფებად. მე არასოდეს გამიკეთებია მსგავსი რამ ადრე, მაგრამ მათ აქვთ შესანიშნავი სახელმძღვანელო საიტზე, რომელიც განმარტავს, თუ როგორ მუშაობს რედაქტორი, და ერთ საათში დაფა შემუშავებული და შეკვეთილი მქონდა.
დაფის ზოგიერთი უბანი იმ დროს ცუდად იყო შემუშავებული გამოუცდელობის გამო, მაგალითად, ეკრანის სიმძლავრისთვის ერთი 5V სარკინიგზო მაგისტრალის გამოყენება, ვიდრე თითოეული მათგანის ცალკე კვება. საბედნიეროდ, ნებისმიერი ძაბვის ვარდნა, რაც მოხდა, არ იყო საკმარისი იმისათვის, რომ პრობლემები შეექმნა ეკრანებთან.
დაფები ჩამოვიდნენ დაახლოებით 2 კვირის შემდეგ და საბედნიეროდ მუშაობდნენ ყოველგვარი პრობლემის გარეშე.
ნაბიჯი 6: ეკრანის დამონტაჟება
პირველი ნაწილები იყო ეკრანის საყრდენი. მე გამოვიყენე 3 მმ ალუმინი ამისთვის და გაბურღული ხვრელები სადგამებისთვის. ზომები განისაზღვრა ყველაფერი მაგიდაზე დაყენებით, როგორც მე მინდოდა, რომ ყოფილიყო პედლები და გავზომოთ ეკრანის PCB- ების სამონტაჟო ხვრელებიდან. მე ასევე დავდე ფეხის გადამრთველები მათთან, რომ მივიღო დისტანციები მათთვის.
ყველა ხვრელის გაბურღვის შემდეგ ეკრანები დამონტაჟდა და შემოწმდა კვადრატულად, მრგვალი ქვედა ბრტყელ კიდეებს მიაჭირა. ჯერჯერობით ყველაფერი რიგზეა.
ნაბიჯი 7: დანართი
შემდეგი იყო საქმის შეცვლა. ფეხის გადამრთველები და LED- ები იყო პირდაპირი, რადგან თითოეულ მათგანს, შესაბამისად, 12 მმ და 5 მმ ხვრელი სჭირდებოდა.
ფიზიკური მუშაობის ძირითადი ნაწილი მოვიდა ეკრანის ხვრელების ამოკვეთისას. მე გამოვიყენე დრემელი მძიმე დამჭერი დისკებით და სხვადასხვა ფაილები ხვრელების გასასუფთავებლად. ამ ნაწილს დაახლოებით 2 საათი დასჭირდა.
დანართი, რომელიც მე გამოვიყენე, განკუთვნილი იყო სამრეწველო მიზნებისთვის და გაკეთდა ლითონის ერთი ნაჭრის მოხრით და კუთხეების შედუღებით. ეს იმას ნიშნავდა, რომ გარკვეული სამუშაოები იქნებოდა საჭირო იმისათვის, რომ გაეწმინდა ეს კუთხეები მანქანის კორპუსის შემავსებლის გამოყენებით დაბალ წერტილებზე გასასწორებლად და ზღვარზე არსებული ხარვეზების შესავსებად.
ამ დროს საქმე სრულად დასრულდა და მე ყველაფერი დავცინე მხოლოდ იმის სანახავად, თუ როგორ იქნებოდა ის.
ნაბიჯი 8: უჰ-ოჰ
და შემდეგ გაირკვა, რომ მიუხედავად ყველა ჩემი დაგეგმვისა და გაზომვისა, მე დავუშვი ერთი დიდი შეცდომა. დაფისა და საქმის განლაგება ერთმანეთისგან დამოუკიდებლად შევიმუშავე. ჩემს თავში, დაფა თითქმის თანაბრად იჯდა ზედა კედელთან, მის უკან მოკლე დგას. მაგრამ აბსოლუტურად არავითარი გზა არ არსებობდა ამის შესაფერისად. და არც ადგილი იყო გვერდით გადასაყენებლად. უზარმაზარი გადამეტება, მაგრამ საბედნიეროდ ის, რისი გამოსწორებაც შემეძლო, რადგან საქმის უკანა ყდაზე ეკრანის დამჭერებს შორის ჯერ კიდევ საკმაოდ დიდი ადგილი იყო. კიდევ რამდენიმე ხვრელი გაბურღულია ეკრანის საყრდენებზე და რამოდენიმე საყრდენი და ჩვენ ისევ ბიზნესს ვუბრუნდებით, საკმარისი ადგილი გვაქვს საფარის დასაფარად.
ნაბიჯი 9: ხატვა
ყველაფერი ისევ დაიშალა და კორპუსი შეღებილი იქნა მეტალის კანფეტის წითლად, რასაც მოჰყვა ლაქის რამდენიმე ფენა. საქმე ერთი კვირის განმავლობაში დარჩა განკურნების მიზნით, თუმცა აღმოვაჩინე, რომ ლაქი ჯერ კიდევ ოდნავ რბილი იყო ამ დროს, როდესაც ყველაფერს ვაშენებდი. საღებავის რამდენიმე მცირე უბანი დაზიანდა ამის გამო. რისი თავიდან აცილებაც მინდა მომავალ პროექტში.
ამ დროის განმავლობაში, მე ვიყიდე 3D პრინტერი და გადავწყვიტე გამომეყენებინა საყელურები ფეხის გადამრთველებისთვის, რადგან მე ნაყიდ ნეილონებს საშინელი მოყვითალო ელფერი ჰქონდათ და ცუდი ზომის იყო.
ნაბიჯი 10: გაყვანილობა
ფიზიკური შეკრების ბოლო ნაწილი იყო ყველაფრის მავთული. ისევ და ისევ, საქმის დიზაინთან/PCB დიზაინთან დაკავშირებული საკითხები კვლავ წამოიჭრა და PCB– ის ზოგიერთი სათაურის პოზიცია ნიშნავდა ერთმანეთზე ბევრი მავთულის გადაკვეთას, რაც ნივთებს ოდნავ არეულად აქცევდა, ვიდრე ველოდი.
ეკრანების მავთულები შეფუთული იყო 4 ნაკრებში და სითბოს შემცირებისა და ნაქსოვი შეფუთვის გამოყენებით, დამზადებულია ერთ ნაწილად.
ნაბიჯი 11: Arduino კოდი
როგორც არდუინოს კოდირების მთლიანი დამწყები, მე თვითონ ვასწავლიდი წინსვლას. კოდი, ალბათ, არის პროგრამული უზრუნველყოფის ექვივალენტი "გრძელი გზის ირგვლივ", მაგრამ მე კმაყოფილი ვიყავი, რომ ის მუშაობდა ისე, როგორც განზრახული იყო.
DD500– ის მარყუჟს აქვს 5 ძირითადი ფუნქცია:
- Looper ჩართულია/გამორთულია
- ჩაწერა/გადატვირთვა/დაკვრა
- ითამაშეთ ჩაწერილი მარყუჟი
- შეაჩერე დაკვრა
- წაშალეთ ჩაწერილი მარყუჟი
თითოეულ ამ ფუნქციას აქვს შესაბამისი ფეხის გადამრთველი და, გაჩერების ღილაკის გარდა, სტატუსის LED. LCD ეკრანები ასევე განახლებულია შესაბამისი ინფორმაციით, რათა აჩვენოს არის თუ არა პედლები ჩაწერის, გადატვირთვის ან დაკვრის რეჟიმში, ასევე რა ფუნქციას შეასრულებს თითოეული ფეხის გადამრთველი იმის მიხედვით, თუ რა ხდება იმ დროს.
კიდევ ერთი თვისება, რომელიც მე დავამატე, იყო თვალყურის დევნება რამდენჯერ იყო გააქტიურებული ჩანაწერი/გადატვირთული ფუნქცია. ეს ინახება კოდში მთელი რიცხვის გაზრდით, რომელიც გამოჩნდება "ბუფერულ" ეკრანზე და აჩვენებს რამდენი ჩანაწერია ჩაწერილი. მიუხედავად იმისა, რომ DD500 ვერ წაშლის ცალკეულ ჩანაწერებს, მე დავამატე ეს მხოლოდ როგორც კოდირების სავარჯიშო იმის დასადგენად, შევძლებ თუ არა მას მუშაობა.
როგორც ჩანს, პრობლემაა Instructables- ში ფაილების ატვირთვა და ამიტომ მე კოდის ასლი Pastebin– ზე დავდე, ამის ნაცვლად:
კოდში გამოყენებულია 2 ბიბლიოთეკა:
LiquidCrystal_I2C
FortySevenEffects MIDI ბიბლიოთეკა
ნაბიჯი 12: დასკვნა
ამ პროექტისგან ერთ – ერთი ყველაზე დიდი რამ არის ის, რომ რაც შეიძლება ადრე დაგეგმვა შეძლებს თავიდან აიცილოს პოტენციური საკითხები. ჩემი PCB– ის დამონტაჟებასთან დაკავშირებული საკითხები ხაზს უსვამს ამის მნიშვნელობას. კარგი ჩანაწერების შენახვა ასევე არის ის, რასაც მე გირჩევთ. მათ გარეშე, მე შეიძლება შეექმნა უფრო მეტი საკითხი, ვიდრე მე მქონდა. მე ამჟამად ვაშენებ ჩემს მეორე MIDI კონტროლერს და ამჯერად მე უფრო დიდი ძალისხმევა გამოვიყენე ჩემი კოდის გასამარტივებლად და ჩემი ტექნიკის დიზაინის შესაქმნელად, თუ როგორ უნდა იყოს დამონტაჟებული PCB.
გირჩევთ:
ფეხის პედლების ჩამკეტი დისტანციური + ტრიგერი: 6 ნაბიჯი (სურათებით)
ფეხის პედლის ჩამკეტი დისტანციური + ტრიგერი: ეს პედლებიანი პულტი შესანიშნავია ანიმატორების, ფოტოარქივისტებისთვის, ბლოგერებისთვის და პროფესიონალებისთვის, რომლებიც მუდმივად ვერ აღწევენ კამერის ჩამკეტის ღილაკს, ან სჭირდებათ სწრაფად მუშაობა მაგიდაზე კამერით დამონტაჟებული მაღალი ოვერჰედის. 2020 წლის დეკემბრის განახლება: E
ფეხის კონტროლირებადი Push to Talk ღილაკი: 5 ნაბიჯი
ფეხის კონტროლირებადი Push to Talk ღილაკი: ასე გავაკეთე Push To Talk ღილაკი, რომლის გამოყენებაც შეგიძლია ფეხებთან ერთად
მოქმედებს თუ არა სირბილი ფეხის მასაზე: 13 ნაბიჯი
მოქმედებს თუ არა სირბილი ფეხის მასაზე: მოქმედებს თუ არა სირბილი ფეხის მასაზე/ზომაზე?
Arduino დაფუძნებული წვრილმანი თამაშის კონტროლერი - Arduino PS2 თამაშის კონტროლერი - თამაში Tekken With DIY Arduino Gamepad: 7 ნაბიჯი
Arduino დაფუძნებული წვრილმანი თამაშის კონტროლერი | Arduino PS2 თამაშის კონტროლერი | თამაში Tekken With DIY Arduino Gamepad: გამარჯობა ბიჭებო, თამაშების თამაში ყოველთვის სახალისოა, მაგრამ საკუთარი წვრილმანი თამაშით თამაში უფრო სახალისოა. ასე რომ, ჩვენ გავაკეთებთ თამაშის კონტროლერს arduino pro micro- ს ამ ინსტრუქციებში
YABC - კიდევ ერთი ბლინკის კონტროლერი - IoT Cloud ტემპერატურისა და ტენიანობის კონტროლერი, ESP8266: 4 ნაბიჯი
YABC - კიდევ ერთი ბლინკის კონტროლერი - IoT Cloud ტემპერატურისა და ტენიანობის კონტროლერი, ESP8266: გამარჯობათ, მე ცოტა ხნის წინ დავიწყე სოკოს მოყვანა სახლში, ოსტრების სოკო, მაგრამ მე უკვე მაქვს 3 ამ კონტროლერის სახლში Fermenter ტემპერატურის კონტროლი ჩემი სახლის ხარშვის, მეუღლისთვის ის ასევე აკეთებს ამ კომბუჩას საქმეს ახლა და როგორც თერმოსტატი სითბოსთვის