Სარჩევი:
- ნაბიჯი 1: აპარატურის დიზაინი
- ნაბიჯი 2: სწორი ძრავების არჩევა
- ნაბიჯი 3: ბაზის მშენებლობა
- ნაბიჯი 4: აპარატურის აწყობა
- ნაბიჯი 5: ელექტრონიკა
- ნაბიჯი 6: პროგრამული უზრუნველყოფა და სერიული ინტერფეისი
- ნაბიჯი 7: დასკვნა
ვიდეო: Q -Bot - ღია წყარო Rubik's Cube Solver: 7 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
წარმოიდგინეთ, რომ თქვენ გაქვთ რუბიკის კუბი, თქვენ იცით, რომ 80 -იანი წლების თავსატეხი ყველას აქვს, მაგრამ არავინ იცის როგორ გადაჭრას და თქვენ გინდათ დააბრუნოთ იგი პირვანდელ ფორმაში. საბედნიეროდ ამ დღეებში ძალიან ადვილია გადაჭრის ინსტრუქციების პოვნა. ასე რომ, გადადით ინტერნეტში და უყურეთ ვიდეოს, ისწავლეთ როგორ გადაუხვიოთ გვერდები, რათა სიხარული მოგანიჭოთ. რამდენჯერმე ამის გაკეთების შემდეგ, თქვენ მიხვდებით, რომ რაღაც აკლია. შიგნით ხვრელი, რომლის შევსება შეუძლებელია. თქვენს შიგნით ინჟინრები/შემქმნელი/ჰაკერები უბრალოდ ვერ დაკმაყოფილდებიან ამგვარი საოცარი რაღაცის გადაჭრით ასე მარტივად. არ იქნება ბევრად უფრო პოეტური, რომ გქონდეთ მანქანა, რომელიც ყველაფერს გადაწყვეტს თქვენთვის? შენ რომ ააშენო რამე, ყველა შენი მეგობარი გაოცებული იქნებოდა? მე შემიძლია გარანტიას გაძლევთ, რომ ეს არ იქნება ბევრად უკეთესი ვიდრე თქვენი შემოქმედების ყურება სასწაულების მოხდენა და რუბიკის კუბის ამოხსნა. ასე რომ, მოდი და შემომიერთდი Q-Bot– ის მშენებლობის მშვენიერ მოგზაურობაში, ღია წყაროს Rubik's Cube Solver, რომელიც რა თქმა უნდა არ დაამარცხებს მსოფლიო რეკორდებს, მაგრამ მოგცემთ სიხარულის საათებს (რა თქმა უნდა, ყველა იმედგაცრუების გადალახვის შემდეგ) მშენებლობის პროცესში).
ნაბიჯი 1: აპარატურის დიზაინი
სრული გამხსნელი შეიქმნა CAD– ით კატაში. ამ გზით დიზაინის შეცდომების უმეტესობა შეიძლება მოიძებნოს და გამოსწორდეს ნებისმიერი ფიზიკური კომპონენტის წარმოებამდე. ამონახსნის უმეტესობა იყო 3D დაბეჭდილი PLA– ში prusa MK3 პრინტერის გამოყენებით. გარდა ამისა, გამოყენებული იქნა შემდეგი ტექნიკა:
- 8 ცალი 8 მმ ალუმინის ჯოხი (სიგრძე 10 სმ)
- 8 ხაზოვანი ბურთი საკისრები (LM8UU)
- ცოტა ნაკლები 2 მ GT2 6 მმ ქამარი ქამარი + რამოდენიმე ბორბალი
- 6 NEMA 17 ბიპოლარული სტეპერიანი ძრავა
- 6 Polulu 4988 სტეპერი დრაივერი
- არუდინო მეგა, როგორც პროექტის მაკონტროლებელი
- 12 V 3A კვების ბლოკი
- ნაბიჯი ქვემოთ გადამყვანი უსაფრთხოდ ელექტროენერგიის arduino
- რამდენიმე ხრახნი და კონექტორი
- პლაივუდი ბაზისთვის
აპარატურის აღწერა
ეს ნაწილი მოკლედ მოიცავს როგორ მუშაობს Q-Bot და სად გამოიყენება ზემოთ ჩამოთვლილი კომპონენტები. ქვემოთ შეგიძლიათ იხილოთ სრულად აწყობილი CAD მოდელის რენდერი.
Q-bot მუშაობს იმით, რომ ოთხი ძრავა მიმაგრებულია უშუალოდ რუბიკის კუბიკზე 3D ბეჭდვით სახელურებით. ეს ნიშნავს, რომ მარცხნივ, მარჯვნივ, წინ და უკან შეიძლება პირდაპირ მოტრიალდეს. თუ ზედა ან ქვედა მხარე უნდა გადაბრუნდეს, მთელი კუბი უნდა გადაბრუნდეს და ასე რომ ორი ძრავა უნდა გადაადგილდეს. ეს კეთდება თითოეული მომჭერი ძრავის მიმაგრებით სასწავლებელზე, რომელიც მოძრაობს სხვა სტეპერიანი ძრავით და დროის სარტყელი ხაზოვანი სარკინიგზო სისტემის გასწვრივ. სარკინიგზო სისტემა შედგება ორი 8 ბურთიანი საკისრისგან, რომლებიც დამონტაჟებულია სასწავლებელში და მთელი სასრიალებელი მიემართება ორ 8 მმ ალუმინის შახტზე. ქვემოთ შეგიძლიათ ნახოთ გამხსნელის ერთი ღერძის ქვე -შეკრება.
X- და y ღერძი ძირითადად იდენტურია, ისინი განსხვავდებიან მხოლოდ ქამრის სამონტაჟო წერტილის სიმაღლეში, ეს ხდება ისე, რომ სრულად აწყობისას არ მოხდეს შეჯახება ორ სარტყელს შორის.
ნაბიჯი 2: სწორი ძრავების არჩევა
რა თქმა უნდა, სწორი ძრავების შერჩევა აქ ძალიან მნიშვნელოვანია. მთავარი ნაწილი ის არის, რომ ისინი უნდა იყვნენ საკმარისად ძლიერი, რომ შეძლონ რუბიკის კუბის გადაბრუნება. აქ ერთადერთი პრობლემა ის არის, რომ რუბიკის კუბების არცერთი მწარმოებელი არ იძლევა ბრუნვის ნიშანს. ასე რომ, მომიწია იმპროვიზაცია და საკუთარი გაზომვების გაკეთება.
ზოგადად ბრუნვის მომენტი განისაზღვრება ძალით მიმართული ბრუნვის წერტილის პოზიციის მიმართ r მანძილზე:
ასე რომ, თუ შემეძლო როგორმე გავზომოთ ძალა, რომელიც კუბს ეკუთვნის, შემიძლია გამოვთვალო ბრუნვის მომენტი. რაც ზუსტად მე გავაკეთე. ჩემი კუბი თაროზე ისე დავაჭირე, რომ მხოლოდ ერთ მხარეს შეეძლო გადაადგილება. რომ სიმები კუბის ირგვლივ იყო მიბმული და ჩანთა ბოლოში იყო მიმაგრებული. ახლა მხოლოდ ის დარჩა, რომ ნელ -ნელა გაეზარდა წონა ტომარაში, სანამ კუბი არ ბრუნდებოდა. ზუსტი წონის არარსებობის გამო გამოვიყენე კარტოფილი და შემდგომ გავზომე. ეს არ არის ყველაზე მეცნიერული მეთოდი, მაგრამ რადგან მე არ ვცდილობ მინიმალური ბრუნვის პოვნას, ეს საკმაოდ საკმარისია.
მე სამჯერ გავაკეთე გაზომვები და მივიღე უმაღლესი ღირებულება მხოლოდ იმისათვის, რომ ვიყო უსაფრთხო. შედეგად მიღებული წონა იყო 0.52 კგ. სერ ისააკ ნიუტონის გამო ჩვენ ვიცით, რომ ძალა უდრის მასის გამრავლებას.
აჩქარება, ამ შემთხვევაში, არის გრავიტაციული აჩქარება. ასე რომ, საჭირო ბრუნვის მომენტი მოცემულია
ყველა ღირებულების ჩართვა, მათ შორის რუბიკის კუბის დიაგონალის ნახევარი, საბოლოოდ ავლენს საჭირო ბრუნვის მომენტს.
მე დავდიოდი სტეპერიანი ძრავით, რომელსაც შეუძლია გამოიყენოს 0.4 ნმ -მდე, რაც, ალბათ, ზედმეტია, მაგრამ მინდოდა უსაფრთხოდ ვიყო.
ნაბიჯი 3: ბაზის მშენებლობა
ბაზა შედგება ძალიან მარტივი ხის ყუთისაგან და მასში განთავსებულია ყველა საჭირო ელექტრონიკა. მას აქვს დანამატი აპარატის ჩართვისა და გამორთვისთვის, LED, რომელიც მიუთითებს თუ არა ის ჩართული, USB B პორტი და სოკეტი კვების ბლოკის შესაერთებლად. იგი აშენდა 15 მმ პლაივუდის, ხრახნების და ცოტა წებოს გამოყენებით.
ნაბიჯი 4: აპარატურის აწყობა
ახლა ყველა საჭირო ნაწილთან ერთად, ბაზის ჩათვლით, Q-bot მზად იყო ასაწყობად. საბაჟო ნაწილები იყო 3D დაბეჭდილი და მორგებული საჭიროებისამებრ. თქვენ შეგიძლიათ ჩამოტვირთოთ ყველა CAD ფაილი ამ იბლის ბოლოს. ასამბლეა მოიცავდა 3D ბეჭდვის ყველა ნაწილის მორგებას ნაყიდი ნაწილებით, ძრავის კაბელების გაფართოებას და ყველა ნაწილის ხრახნს ბაზაზე. გარდა ამისა, საავტომობილო კაბელების გარშემო ვამაგრებ ყურსასმენებს, რომ ცოტა უფრო სუფთა გამოვიყურებოდე და მათ ბოლოებში დავამატე JST კონექტორები.
ჩემს მიერ აშენებული ბაზის მნიშვნელობის ხაზგასასმელად, აქ არის კადრი ადრე და შემდეგ, თუ როგორ გამოიყურებოდა ასამბლეა. ყველაფრის ოდნავ დალაგებას შეუძლია დიდი განსხვავება.
ნაბიჯი 5: ელექტრონიკა
რაც შეეხება ელექტრონიკას, პროექტი საკმაოდ მარტივია. არის მთავარი 12 ვ ელექტროენერგიის წყარო, რომელსაც შეუძლია 3 ა -მდე დენის მიწოდება, რაც ძრავებს ამარაგებს. შემდგომი მოდული გამოიყენება Arduino– ს უსაფრთხოდ დასაყენებლად და შეიქმნა Arduino– ს საბაჟო ფარი, რომელშიც განთავსებულია სტეპერიანი ძრავის ყველა მძღოლი. მძღოლები ძრავების კონტროლს ბევრად აადვილებენ. სტეპერიანი ძრავის მართვა მოითხოვს კონკრეტულ საკონტროლო თანმიმდევრობას, მაგრამ ძრავის დრაივერების გამოყენებით ჩვენ გვჭირდება მხოლოდ მაღალი პულსის გამომუშავება თითოეული ნაბიჯისათვის, რომლითაც ძრავა ბრუნდება. გარდა ამისა, რამდენიმე jst კონექტორი დაემატა ფარს, რათა ძრავების დაკავშირება გაადვილდეს. Arduino– ს ფარი მყარად იყო აგებული პერფორდის ნაჭერზე და მას შემდეგ რაც დარწმუნდით, რომ ყველაფერი მუშაობს ისე, როგორც უნდა ყოფილიყო, დამზადებულია jlc pcb– ის მიერ.
აქ არის პროტოტიპის და წარმოებული PCB– ის წინ და შემდგომ.
ნაბიჯი 6: პროგრამული უზრუნველყოფა და სერიული ინტერფეისი
Q-Bot იყოფა ორ ნაწილად. ერთის მხრივ არის ტექნიკა, რომელსაც აკონტროლებს არდუინო, მეორე მხრივ არის პროგრამული უზრუნველყოფა, რომელიც ითვლის კუბის გადაჭრის გზას მიმდინარე სკრიპლის საფუძველზე. არდუინოზე გაშვებული პროგრამული უზრუნველყოფა მე თვითონ დავწერე, მაგრამ იმისათვის, რომ ეს სახელმძღვანელო მოკლედ შევინარჩუნო, მე აქ არ შევალ რაიმე დეტალზე. თუ გსურთ შეხედოთ მას და ითამაშოთ მასთან ერთად, ჩემი git საცავის ბმული მოცემულია ამ დოკუმენტის ბოლოს. პროგრამული უზრუნველყოფა, რომელიც გამოთვლის გამოსავალს მუშაობს Windows მანქანაზე და დაწერა ჩემმა კოლეგამ, კვლავ ბმულები მის კოდზე შეგიძლიათ ნახოთ ამ სურათის ბოლოს. ორი ნაწილი ურთიერთობს მარტივი სერიული ინტერფეისის გამოყენებით. იგი ითვლის ხსნარს კოჩიემბას ორფაზიანი ალგორითმის საფუძველზე. ამოხსნის პროგრამული უზრუნველყოფა აგზავნის ბრძანებას, რომელიც შედგება ორი ბაიტისგან ამომხსნელს და ელოდება როდის დააბრუნებს მას 'ACK'. ამ გზით ამონახსნის გამოცდა და გამართვა შესაძლებელია მარტივი სერიული მონიტორის გამოყენებით. ინსტრუქციის სრული ნაკრები შეგიძლიათ იხილოთ ქვემოთ.
თითოეული ძრავის ერთი ნაბიჯის გადაქცევის ბრძანებები არის გამოსავალი პრობლემის გადასაჭრელად, როდესაც ზოგიერთი სტეპერი შემთხვევით ასრულებს მცირე ხტუნვას გაძლიერებისთანავე. ამის კომპენსაციისთვის ძრავები შეიძლება მორგებული იყოს საწყის პოზიციაზე გადაჭრის პროცესამდე.
ნაბიჯი 7: დასკვნა
რვა თვიანი განვითარების შემდეგ, გინება, კლავიატურაზე დარტყმა და Q-bot ცეკვა საბოლოოდ იყო იმ წერტილში, სადაც წარმატებით იქნა ამოხსნილი მისი პირველი რუბიკის კუბი. კუბის ჩხუბი ხელით უნდა ჩასმულიყო საკონტროლო პროგრამულ უზრუნველყოფაში, მაგრამ ყველაფერი კარგად მუშაობდა.
რამდენიმე კვირის შემდეგ დავამატე ვებკამერის საყრდენი და ჩემმა კოლეჯმა შეასრულა პროგრამული უზრუნველყოფა, რომ კუბი ავტომატურად წაიკითხა გადაღებული სურათებიდან. თუმცა, ეს ჯერ არ არის კარგად შემოწმებული და კვლავ საჭიროებს გარკვეულ გაუმჯობესებებს.
თუ ამ ინსტრუქციამ გამოიწვია თქვენი ინტერესი, ნუ დააყოვნებთ და დაიწყეთ Q-bot– ის საკუთარი ვერსიის შექმნა. ეს შეიძლება თავიდან დამაბრკოლებლად მოგეჩვენოთ, მაგრამ ძალიან ღირს ძალისხმევა და თუ მე შევძელი ამის გაკეთება, თქვენც შეგიძლიათ.
რესურსები:
პროგრამული უზრუნველყოფის წყაროს კოდი:
github.com/Axodarap/QBot_firmware
საკონტროლო პროგრამული უზრუნველყოფის წყაროს კოდი
github.com/waldhube16/Qbot_SW
გირჩევთ:
USB ცვლადი ძაბვის კვების წყარო: 7 ნაბიჯი (სურათებით)
USB ცვლადი ძაბვა როგორც მე შევიმუშავე იგი, მე გავხდი უფრო მრავალმხრივი, რაც საშუალებას იძლევა არა მხოლოდ USB შეყვანის, არამედ 3 VDC– დან 8 VDC– ს USB დანამატის საშუალებით ან ბანანის საცობების საშუალებით. გამომავალი იყენებს t
რეალურ დროში Rubik's Cube Blindfolded Solver Raspberry Pi და OpenCV გამოყენებით: 4 ნაბიჯი
რეალურ დროში რუბიკის კუბი თვალდახუჭული ამომხსნელი ჟოლოს Pi და OpenCV გამოყენებით: ეს არის რუბიკის კუბის ინსტრუმენტის მე -2 ვერსია, რომელიც შექმნილია თვალდახუჭულებში. პირველი ვერსია შემუშავებულია javascript– ით, თქვენ შეგიძლიათ ნახოთ პროექტი RubiksCubeBlindfolded1 წინაგან განსხვავებით, ეს ვერსია იყენებს OpenCV ბიბლიოთეკას ფერების და
პორტატული ცვლადი კვების წყარო: 8 ნაბიჯი (სურათებით)
პორტატული ცვლადი ელექტრომომარაგება: ერთ -ერთი ინსტრუმენტი, რომელიც ნებისმიერ ელექტრონულ მოყვარულს უნდა ჰქონდეს თავის ნაკრებში არის პორტატული, ნამდვილი კვების წყარო. მე ადრე გავაკეთე ერთი ('Ibles ქვემოთ) სხვადასხვა მოდულის გამოყენებით, მაგრამ ეს ნამდვილად არის ჩემი ფავორიტი. ძაბვის მარეგულირებელი და დატენვის თვე
ARS - Arduino Rubik Solver: 13 ნაბიჯი (სურათებით)
ARS - Arduino Rubik Solver: ARS არის სრული სისტემა რუბიკის კუბის მოსაგვარებლად: დიახ, კიდევ ერთი რობოტი კუბის მოსაგვარებლად! ARS არის სამწლიანი სკოლის პროექტი, რომელიც დამზადებულია 3D ბეჭდვით ნაწილებით და ლაზერული ჭრის სტრუქტურებით: Arduino იღებს სწორ თანმიმდევრობას. სახლში დამზადებული დივანი
Apple G4 Cube Case Mod Rubik Style Hackintosh: 15 ნაბიჯი (სურათებით)
Apple G4 Cube Case Mod Rubik Style Hackintosh: G4 კუბის ორიგინალს გააჩნდა 450Mhz PowerPC პროცესორი და მაქსიმალური 1.5 გბ ოპერატიული მეხსიერება. Apple– მა დაამზადა G4 კუბი 2000 წლიდან 2001 წლამდე, დაახლოებით 1600 აშშ დოლარად. ის მუშაობდა Mac OS 9.04– ით OS X 10.4– მდე (PowerPC, არა Intel). ეს არის დაახლოებით 7.5 x 7.5 x 10 ინჩი, wi