უახლესი სტატიები
მთავარი / სხვადასხვა / დამწყებთათვის მიკროკონტროლერებზე დაფუძნებული ელექტრონული მოწყობილობები. სიხშირის გადამყვანი ასინქრონული ძრავისთვის AVR-ზე. საახალწლო ვარსკვლავი Attiny44-ზე და WS2812-ზე

დამწყებთათვის მიკროკონტროლერებზე დაფუძნებული ელექტრონული მოწყობილობები. სიხშირის გადამყვანი ასინქრონული ძრავისთვის AVR-ზე. საახალწლო ვარსკვლავი Attiny44-ზე და WS2812-ზე

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

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

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

განსხვავება მიკროპროცესორსა და მიკროკონტროლერს შორის არის პროცესორის ჩიპში ჩაშენებული start-stop მოწყობილობების, ტაიმერების და სხვა დისტანციური სტრუქტურების არსებობა. ამჟამინდელ კონტროლერში საკმაოდ მძლავრი გამოთვლითი აპარატის ფართო შესაძლებლობების გამოყენება, რომელიც აგებულია მონოცირკულატორზე, ერთი კომპლექტის ნაცვლად, მნიშვნელოვნად ამცირებს მის საფუძველზე შექმნილი მოწყობილობების მასშტაბს, მოხმარებას და ფასს.

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

AVR მიკროკონტროლერები

მოდით გავეცნოთ თანამედროვე ტექნოლოგიების სამყაროში უფრო გავრცელებულ და კარგად დამკვიდრებულ კონტროლერს, როგორიცაა AVR. იგი შედგება მაღალსიჩქარიანი RISC მიკროპროცესორისგან, 2 ტიპის ენერგომოხმარების მეხსიერებისგან (Flash პროექტის ქეში და EEPROM ინფორმაციის ქეში), RAM-ის ტიპის ოპერატიული ქეში, I/O პორტები და სხვადასხვა დისტანციური ინტერფეისის სტრუქტურები.

  • სამუშაო ტემპერატურა მერყეობს -55-დან +125 გრადუს ცელსიუსამდე;
  • შენახვის ტემპერატურა -60-დან +150 გრადუსამდე;
  • უმაღლესი ძაბვა RESET პინზე, GND-ის შესაბამისად: მაქსიმუმ 13 ვ;
  • მაქსიმალური მიწოდების ძაბვა: 6.0 ვ;
  • შემავალი/გამომავალი ხაზის მაქსიმალური ელექტრული დენი: 40 mA;
  • მაქსიმალური დენი ელექტრომომარაგების ხაზზე VCC და GND: 200 mA.

AVR მიკროკონტროლერის შესაძლებლობები

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

მეორე თაობის AVR მიკროკონტროლერებისთვის ქეშის აღწერის რევოლუციების დაპირებული რაოდენობა არის 11 ათასი რევოლუცია, როდესაც რევოლუციების სტანდარტული რაოდენობა 100 ათასია.

AVR-ის შემავალი და გამომავალი პორტების სტრუქტურის კონფიგურაცია შემდეგია: ფიზიოლოგიური გამომავალი დანიშნულებაა რეგულირების სამი ბიტი და არა ორი, როგორც ცნობილ ბიტ კონტროლერებში (Intel, Microchip, Motorola და ა.შ. ). ეს თვისება გამორიცხავს დაცვის მიზნებისთვის მეხსიერებაში პორტის კომპონენტების დუბლიკატის არსებობის აუცილებლობას და ასევე აჩქარებს მიკროკონტროლერის ენერგოეფექტურობას გარე მოწყობილობებთან ერთად, კერძოდ, გარე ელექტრული პრობლემების შემთხვევაში.

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

როდესაც პრობლემა წარმოიქმნება, რომელიც იწვევს გამორთვას, მიკროკონტროლერი ინახავს კომპონენტების კორექტირების მრიცხველებს, აჩერებს გენერალურ პროცესორს ამ პროგრამის შესრულებაში და იწყებს გამორთვის დამუშავების რუტინის შესრულებას. შესრულების დასასრულს, შეჩერების პროგრამის პატრონაჟით, განახლდება ადრე შენახული პროგრამის მრიცხველი და პროცესორი აგრძელებს დაუმთავრებელი პროექტის შესრულებას.

ხელნაკეთობები დაფუძნებული AVR მიკროკონტროლერზე

AVR მიკროკონტროლერების გამოყენებით წვრილმანი ხელნაკეთობები სულ უფრო პოპულარული ხდება მათი სიმარტივისა და ენერგიის დაბალი ხარჯების გამო. რა არის ისინი და როგორ გააკეთოთ ისინი საკუთარი ხელით და გონებით, იხილეთ ქვემოთ.

"რეჟისორი"

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

ჩართვა აგებულია AVR მიკროკონტროლის ბაზაზე, რომელიც დატვირთულია გარე კვარცის რეზონატორიდან 11,0598 MHz-ზე. NEO-6M U-blox-ისგან პასუხისმგებელია GPS-თან მუშაობაზე. ეს, მიუხედავად იმისა, რომ მოძველებულია, არის ფართოდ ცნობილი და საბიუჯეტო მოდული მდებარეობის განსაზღვრის საკმაოდ მკაფიო შესაძლებლობით. ინფორმაცია ფოკუსირებულია Nokia 5670-ის ეკრანზე. მოდელი ასევე შეიცავს HMC5883L მაგნიტურ ტალღის მრიცხველს და ADXL335 აქსელერომეტრს.


უკაბელო განგაშის სისტემა მოძრაობის სენსორით

სასარგებლო მოწყობილობა, რომელიც მოიცავს მოძრაობის ხელსაწყოს და რადიოარხის მიხედვით, სიგნალის მიცემის უნარს, რომ ის გააქტიურებულია. დიზაინი მოძრავია და იტენება ბატარეის ან ბატარეების გამოყენებით. მის შესაქმნელად, თქვენ უნდა გქონდეთ რამდენიმე HC-12 რადიო მოდული, ასევე HC-SR501 მოძრაობის სენსორი.

HC-SR501 მოძრაობის მოწყობილობა მუშაობს მიწოდების ძაბვით 4.5-დან 20 ვოლტამდე. და ამისთვის ოპტიმალური შესრულება LI-Ion ბატარეიდან, შემოიარეთ უსაფრთხოების LED დენის შესასვლელთან და დახურეთ 7133 ხაზოვანი სტაბილიზატორის წვდომა და გამომავალი (მე-2 და მე-3 ფეხი). ამ პროცედურების დასრულების შემდეგ, მოწყობილობა იწყება მუდმივი სამუშაო 3-დან 6 ვოლტამდე ძაბვაზე.


ყურადღება: HC-12 რადიო მოდულთან ერთად მუშაობისას, სენსორი ხანდახან ცრუ მოქმედებდა. ამის თავიდან ასაცილებლად აუცილებელია გადამცემის სიმძლავრის 2-ჯერ შემცირება (ბრძანება AT+P4). სენსორი მუშაობს ზეთზე და ერთი დამუხტული ბატარეა 700 mAh ტევადობით იმუშავებს ერთ წელზე მეტი ხნის განმავლობაში.

მინიტერმინალი

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


თქვენ უნდა აიღოთ გადამყვანის მოდული, რომელიც დაფუძნებულია LM2577-ზე და საფუძველი შეიძლება იყოს Li-Ion ბატარეა, რომლის სიმძლავრეა 2500 mAh. იქნება სასარგებლო პაკეტი, რომელიც უზრუნველყოფს მუდმივ 3.3 ვოლტს მთელი საოპერაციო ძაბვის დიაპაზონში. დატენვის მიზნით გამოიყენეთ TP4056 ჩიპზე დაფუძნებული მოდული, რომელიც ითვლება საბიუჯეტო და საკმაოდ მაღალი ხარისხის. იმისათვის, რომ შეძლოთ მინიტერმინალის დაკავშირება 5 ვოლტიან მექანიზმებთან ეკრანის დაწვის შიშის გარეშე, თქვენ უნდა გამოიყენოთ UART პორტები.

AVR მიკროკონტროლერის პროგრამირების ძირითადი ასპექტები

მიკროკონტროლერის კოდირება ხშირად კეთდება ასამბლეის ან SI სტილში, თუმცა, ასევე შეგიძლიათ გამოიყენოთ სხვა Forth ან BASIC ენები. ამრიგად, იმისათვის, რომ რეალურად დაიწყოთ კვლევა კონტროლერის პროგრამირებაზე, თქვენ უნდა იყოთ აღჭურვილი შემდეგი მასალების ნაკრებით, მათ შორის: მიკროკონტროლერი, სამი ცალი ოდენობით - ATmega8A-PU, ATtiny2313A-PU და ATtiny13A-PU ითვლება უაღრესად პოპულარულად. და ეფექტური.

პროგრამის მიკროკონტროლერში დასანერგად გჭირდებათ პროგრამისტი: საუკეთესოდ ითვლება USBASP პროგრამისტი, რომელიც უზრუნველყოფს 5 ვოლტის ძაბვას, რომელიც მომავალში იქნება გამოყენებული. პროექტის შედეგების ვიზუალური შეფასებისა და დასკვნების მიზნით საჭიროა მონაცემთა ამსახველი რესურსები - ეს არის LED-ები, LED ინდუქტორი და ეკრანი.


მიკროკონტროლერის სხვა მოწყობილობებთან კომუნიკაციის პროცედურების შესასწავლად საჭიროა DS18B20 ციფრული ტემპერატურის მოწყობილობა და DS1307 საათი, რომელიც აჩვენებს სწორ დროს. ასევე მნიშვნელოვანია ტრანზისტორები, რეზისტორები, კვარცის რეზონატორები, კონდენსატორები, ღილაკები.

სისტემების დასაყენებლად დაგჭირდებათ სამონტაჟო დაფის ნიმუში. მიკროკონტროლერზე დიზაინის ასაშენებლად, თქვენ უნდა გამოიყენოთ პურის დაფა შეკრების გარეშე შედუღების გარეშე და ამისთვის მხტუნავების ნაკრები: ნიმუშის დაფა MB102 და მხტუნავების დამაკავშირებელი პურის დაფაზე რამდენიმე ტიპის - ელასტიური და ხისტი, ასევე U- ფორმის. მიკროკონტროლერები კოდირებულია USBASP პროგრამისტის გამოყენებით.

უმარტივესი მოწყობილობა, რომელიც დაფუძნებულია AVR მიკროკონტროლერზე. მაგალითი

ასე რომ, გაეცანით რა არის AVR მიკროკონტროლერები და მათი პროგრამირების სისტემა, მოდით განვიხილოთ უმარტივესი მოწყობილობა, რომლის საფუძველსაც ეს კონტროლერი ემსახურება. მოვიყვანოთ დრაივერის მაგალითი დაბალი ძაბვის ელექტროძრავებისთვის. ეს მოწყობილობა საშუალებას იძლევა ერთდროულად აკონტროლოთ ორი სუსტი უწყვეტი დენის ელექტროძრავა.

მაქსიმალური შესაძლო ელექტრული დენი, რომლითაც შესაძლებელია პროგრამის ჩატვირთვა, არის 2 A თითო არხზე, ხოლო ძრავების მაქსიმალური სიმძლავრე 20 W. დაფაზე არის წყვილი ორი ტერმინალური ბლოკი ელექტროძრავების დასაკავშირებლად და სამი ტერმინალური ბლოკი გაძლიერებული ძაბვის მიწოდებისთვის.

მოწყობილობა 43 x 43 მმ ზომის ბეჭდური მიკროსქემის დაფას წააგავს და მასზე აგებულია რადიატორის მინიწრე, რომლის სიმაღლე 24 მილიმეტრია, წონა კი 25 გრამი. დატვირთვის მანიპულაციის მიზნით, მძღოლის დაფა შეიცავს დაახლოებით ექვს შეყვანას.

დასკვნა

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

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

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

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

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

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

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

პროგრამა და სქემა -

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

ციფრული საწვავის დონის მაჩვენებელი წრე აქვს მაღალი ხარისხიგანმეორებადობა, მაშინაც კი, თუ მიკროკონტროლერებთან გამოცდილება უმნიშვნელოა, ამიტომ შეკრების და კონფიგურაციის პროცესის სირთულეების გაგება არ იწვევს პრობლემებს. Gromov პროგრამისტი არის უმარტივესი პროგრამისტი, რომელიც აუცილებელია avr მიკროკონტროლერის დასაპროგრამებლად. Goromov პროგრამისტი კარგად შეეფერება როგორც ჩართვაში, ასევე სტანდარტული მიკროსქემის პროგრამირებას. ქვემოთ მოცემულია დიაგრამა საწვავის ინდიკატორის მონიტორინგისთვის.

LED-ების შეუფერხებელი ჩართვა და გამორთვა ნებისმიერ რეჟიმში (კარი ღიაა და ნათურა ჩართულია). ის ასევე ავტომატურად გამორთულია ხუთი წუთის შემდეგ. და მინიმალური დენის მოხმარება ლოდინის რეჟიმში.

ვარიანტი 1 - გადართვა მინუსით. (N-არხის ტრანზისტორების გამოყენებით) 1) "უარყოფითი გადართვა", ანუ ვარიანტი, რომლის დროსაც ნათურის ერთი დენის მავთული დაკავშირებულია ბატარეის +12 ვოლტთან (დენის წყარო), ხოლო მეორე მავთული ცვლის დენს ნათურის მეშვეობით. , რითაც ჩართეთ იგი. ამ ვარიანტში მიენიჭება მინუსი. ასეთი სქემებისთვის აუცილებელია N-არხის გამოყენება საველე ეფექტის ტრანზისტორებიროგორც გამომავალი გასაღებები.

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

მუშაობის პრინციპი მარტივია: ღილაკის მობრუნება არეგულირებს ხმას, დაჭერით კი ხმის გამორთვა და ჩართვა. საჭიროა Windows-ზე ან Android-ზე დასაწერად

თავდაპირველად, Lifan Smily-ში (და არა მარტო) უკანა გამწმენდის მუშაობის რეჟიმი ერთადერთია და მას "ყოველთვის ტალღას" უწოდებენ. ეს რეჟიმი განსაკუთრებით უარყოფითად აღიქმება წვიმიანი სეზონის დაწყებისას, როდესაც წვეთები გროვდება უკანა ფანჯარაზე, მაგრამ არასაკმარისი რაოდენობით ერთი გამწმენდის გასასვლელად. მაშ ასე, ან უნდა მოუსმინო მინაზე რეზინის ჩხვლეტას, ან რობოტად მოჩვენება და პერიოდულად ჩართო და გამორთო საწმენდი.

მე ოდნავ შევცვალე შიდა განათების შეფერხების დროის სარელეო წრე ფორდის მანქანისთვის (სქემა შემუშავდა ძალიან სპეციფიკური მანქანისთვის, როგორც სტანდარტული Ford 85GG-13C718-AA რელეს შემცვლელი, მაგრამ წარმატებით დამონტაჟდა შიდა "კლასიკურში") .

ეს არ არის პირველი შემთხვევა, როდესაც ასეთი ხელნაკეთობები ჩნდება. მაგრამ რატომღაც ხალხი იჭერს firmware-ს. მიუხედავად იმისა, რომ მათი უმეტესობა დაფუძნებულია elmchan პროექტზე "Simple SD Audio Player 8-pin IC". წყაროს არ ხსნიან, ამტკიცებენ, რომ პროექტი უნდა გამოესწორებინათ, ჩემი ხარისხი უკეთესია... და ა.შ. მოკლედ, თქვენ აიღეთ ღია კოდის პროექტი, ააწყვეთ და გადაეცით როგორც საკუთარს.

Ისე. მიკროკონტროლერი Attiny 13 - გული, ასე ვთქვათ ამ მოწყობილობის. დიდი ხანი ვიბრძოდი მის ფირმვერზე, ვერც 5 მავთულით ვერ გავანათებდი, ვერც გრომოვის პროგრამისტით. კომპიუტერი უბრალოდ ვერ ხედავს კონტროლერს და ეს არის ის.

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

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

ახლა მე მაქვს ორი იდენტური პროგრამისტი ჩემს მაგიდაზე. ეს ყველაფერი მცდელობაზეა ახალი firmware. ეს ტყუპები ერთმანეთს შეკერავენ. ყველა ექსპერიმენტი ტარდება ქვეშ MS Windows XP SP3.
მიზანი მუშაობის სიჩქარის გაზრდა და პროგრამისტის თავსებადობის გაფართოებაა.

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


რამდენიმე ხნის წინ წავაწყდი რამდენიმე ATMEL ATMega163 და ATMega163L მიკროკონტროლერს. მიკროსქემები აღებულია ვადაგასული მოწყობილობებიდან. ეს კონტროლერი ძალიან ჰგავს ATMega16-ს და სინამდვილეში მისი ადრეული ვერსიაა.

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


ედვარდ ნედის სტატიების წაკითხვის შემდეგ შევკრიბე DIP ვერსია და გავტესტე მოქმედებაში. მართლაც, ვოლტმეტრი მუშაობდა, მიკროსქემის გამომავალი დენი ინდიკატორამდე არ აღემატებოდა 16 მილიამპერს თითო პულსზე, ამიტომ მიკროსქემის მუშაობა რეზისტორების გარეშე, რომლებიც ზღუდავენ სეგმენტის დენებს, საკმაოდ მისაღებია და არ იწვევს ელემენტების გადატვირთვას.
მე არ მომეწონა ეკრანზე წაკითხვის ძალიან ხშირი განახლება და შემოთავაზებული "999" მასშტაბი. პროგრამის გასწორება მინდოდა, მაგრამ ავტორი არ აქვეყნებს წყაროს კოდებს.

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


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

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

ციფრულად კონტროლირებადი წინასწარ გამაძლიერებელი-გამრთველი. ჩვენ ვიყენებთ პროგრამირებას Arduino გარსის, ელექტრონული პოტენციომეტრების მიკროჩიპიდან და TFT გრაფიკის მეშვეობით.


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

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

თქვენ ასევე შეგიძლიათ უბრალოდ მიეჩვიოთ ახალ რეზინას ან რეკეტს და კარგად დააჭიროთ მას.

მოგესალმებით მკითხველებო! მე მაქვს ძველი კომპიუტერი, რომელიც უკვე ათი წლისაა. მისი პარამეტრები შესაბამისია: "სტუმპი" 3.0 გჰც, რამდენიმე GB ოპერატიული მეხსიერება და უძველესი. დედაპლატი EliteGroup 915 სერია.


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

ვფიქრობდი, ვფიქრობდი და ვიპოვე გზა, რომ გამეყვანა ჩემი საწყალი თანამემამულე. BIOS-ის ბატარეა ამოვიღე, რამაც კომპიუტერი შეაშინა და მაშინვე ჩართულია, როგორც კი გამოჩნდებოდა დენი! და შემდეგ - თითქმის ყველა BIOS-ს აქვს კომპიუტერის გაშვების შესაძლებლობა კლავიატურის ნებისმიერი ღილაკიდან ან კლავიატურაზე POWER ღილაკიდან. როგორც ჩანს, პრობლემა მოგვარებულია. მაგრამ არა, არის ნიუანსი. ჩატვირთვა არ მუშაობდა USB კლავიატურებიდან. გარდა ამისა, მე არ მინდოდა ახალი მფლობელის შეშინება, კომპიუტერი უნდა დაწყებულიყო ჩართვის ღილაკიდან.

წარმოგიდგენთ ორარხიანი ციკლური ტაიმერის მეორე ვერსიას. დაემატა ახალი ფუნქციები და შეიცვალა მიკროსქემის დიაგრამა. ციკლური ტაიმერი საშუალებას გაძლევთ ჩართოთ და გამორთოთ დატვირთვა, ასევე შეაჩეროთ განსაზღვრული დროის ინტერვალებით ციკლურ რეჟიმში. ტაიმერის თითოეულ გამომავალს აქვს 2 ოპერაციული რეჟიმი - "ლოგიკური" და "PWM". თუ არჩეულია ლოგიკური რეჟიმი, მოწყობილობა საშუალებას გაძლევთ აკონტროლოთ განათება, გათბობა, ვენტილაცია და სხვა ელექტრო მოწყობილობები სარელეო კონტაქტების გამოყენებით. დატვირთვა შეიძლება იყოს ნებისმიერი ელექტრო მოწყობილობა, რომლის დატვირთვის სიმძლავრე არ აღემატება რელეს მაქსიმალურ დენს. "PWM" გამომავალი ტიპი საშუალებას იძლევა, მაგალითად, დააკავშიროთ ძრავა დენის ტრანზისტორის მეშვეობით პირდაპირი დენი, მაშინ როდესაც შესაძლებელია PWM სამუშაო ციკლის დაყენება ისე, რომ ძრავა ბრუნავს გარკვეული სიჩქარით.

საათი, რომელიც აწყობილია ATtiny2313 მიკროკონტროლერზე და LED მატრიცაზე, აჩვენებს დროს 6 სხვადასხვა რეჟიმში.

8*8 LED მატრიცა კონტროლდება მულტიპლექსირების მეთოდით. დენის შემზღუდველი რეზისტორები გამოტოვებულია სქემიდან, რათა თავიდან იქნას აცილებული დიზაინის გაფუჭება, და რადგან ინდივიდუალური LED-ები მუდმივად არ მოძრაობენ, ისინი არ დაზიანდებიან.

კონტროლისთვის არის მხოლოდ ერთი ღილაკი, ღილაკზე ხანგრძლივი დაჭერა (დააჭირეთ და გააჩერეთ) მენიუს როტაციისთვის და ღილაკის ნორმალური დაჭერა მენიუს შესარჩევად.

ეს არის ჰობი პროექტი, ამიტომ საათის სიზუსტე დამოკიდებულია მხოლოდ კონტროლერის შიდა ოსცილატორის დაკალიბრებაზე. მე არ გამომიყენებია კვარცი ამ პროექტში, რადგან ის დასჭირდებოდა ორ ATtiny2313 პინს, რომელიც მე მჭირდებოდა. კვარცი შეიძლება გამოყენებულ იქნას ალტერნატიული (PCB) დიზაინის სიზუსტის გასაუმჯობესებლად.

სიხშირის მრიცხველი 500 MHz-მდე Attiny48-ზე და MB501-ზე

ამჯერად წარმოგიდგენთ მარტივ, მცირე ზომის სიხშირის მრიცხველს, საზომი დიაპაზონით 1-დან 500 MHz-მდე და გარჩევადობით 100 Hz.

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

თუმცა, ამ მრიცხველის შეყვანას ასევე აქვს ორი თვისება, რაც ხელს უშლის სიხშირის მრიცხველის პირდაპირ გამოყენებას უფრო დიდი საჭიროებების დასაკმაყოფილებლად. ერთ-ერთი მათგანია ის, რომ პრაქტიკაში უმეტეს შემთხვევაში ჩვენ ვზომავთ სიგნალს რამდენიმე ასეული მვ ამპლიტუდით, რომელიც მიკროკონტროლერ მრიცხველს ვერ მოძრაობს. ტიპის მიხედვით, ამისთვის სათანადო ოპერაციაშეყვანისთვის საჭიროა სიგნალი მინიმუმ 1-2 ვ. მეორე არის ის, რომ მაქსიმალური გაზომვადი სიხშირე მიკროკონტროლერის შესასვლელში არის მხოლოდ რამდენიმე MHz, ეს დამოკიდებულია მრიცხველის არქიტექტურაზე, ასევე პროცესორის საათის სიჩქარეზე. .

თერმოსტატი ელექტრო ქვაბისთვის ATmega8-ზე (თერმოპოტი)

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

მოწყობილობა დაფუძნებულია ATmega8 მიკროკონტროლერზე, რომელსაც ამუშავებს კვარცის რეზონატორი 8 მჰც სიხშირით. ტემპერატურის სენსორი – ანალოგური LM35. შვიდი სეგმენტის მაჩვენებელი საერთო ანოდით.

საახალწლო ვარსკვლავი Attiny44-ზე და WS2812-ზე

ეს დეკორატიული ვარსკვლავი შედგება 50 სპეციალური RGB LED-ისგან, რომლებიც კონტროლდება ATtiny44A. ყველა LED მუდმივად ცვლის ფერს და სიკაშკაშეს შემთხვევითი გზით. ასევე არსებობს რამდენიმე სახის ეფექტი, რომლებიც ასევე გააქტიურებულია შემთხვევით. სამ პოტენციომეტრს შეუძლია შეცვალოს ძირითადი ფერების ინტენსივობა. ღილაკის დაჭერისას პოტენციომეტრის პოზიცია მითითებულია LED-ებით, ხოლო ფერის ცვლილებისა და ეფექტის სიჩქარის შეცვლა შესაძლებელია სამ ეტაპად. ეს პროექტი აშენდა მთლიანად SMD კომპონენტებზე განსაკუთრებული ფორმის გამო ბეჭდური მიკროსქემის დაფა. მიუხედავად მარტივი დიზაინისა, დაფის სტრუქტურა საკმაოდ რთულია და ნაკლებად სავარაუდოა, რომ შესაფერისი იყოს დამწყებთათვის.

სიხშირის გადამყვანი ამისთვის ასინქრონული ძრავა AVR-ზე

ეს სტატია აღწერს უნივერსალურ სამფაზიან სიხშირის გადამყვანს, რომელიც დაფუძნებულია მიკროკონტროლერზე (MK) ATmega 88/168/328P. ATmega სრულად აკონტროლებს კონტროლს, LCD ეკრანს და სამფაზიან გენერირებას. პროექტი უნდა გაშვებულიყო ისეთ დაფებზე, როგორიცაა Arduino 2009 ან Uno, მაგრამ ეს არ განხორციელდა. სხვა ამონახსნებისაგან განსხვავებით, სინუსოიდი აქ არ არის გამოთვლილი, მაგრამ მიღებულია ცხრილიდან. ეს დაზოგავს რესურსებს, მეხსიერების ადგილს და საშუალებას აძლევს MCU-ს დაამუშაოს და აკონტროლოს ყველა კონტროლი. პროგრამაში მცურავი წერტილის გამოთვლები არ ხორციელდება.

გამომავალი სიგნალების სიხშირე და ამპლიტუდა რეგულირდება 3 ღილაკის გამოყენებით და მათი შენახვა შესაძლებელია EEPROM მეხსიერება MK. ანალოგიურად, გარე კონტროლი უზრუნველყოფილია 2 ანალოგური შეყვანის საშუალებით. ძრავის ბრუნვის მიმართულება განისაზღვრება ჯემპრით ან გადამრთველით.

რეგულირებადი V/f მახასიათებელი იძლევა ადაპტაციის საშუალებას ბევრ ძრავას და სხვა მომხმარებელს. ასევე ჩართულია ინტეგრირებული PID კონტროლერი ანალოგური შეყვანებისთვის და PID კონტროლერის პარამეტრების შენახვა შესაძლებელია EEPROM-ში. პაუზის დრო კლავიშებს შორის (Dead-Time) შეიძლება შეიცვალოს და შეინახოს.

სიხშირის მრიცხველი III DANYK-დან

ეს სიხშირის მრიცხველი AVR მიკროკონტროლერით საშუალებას გაძლევთ გაზომოთ სიხშირე 0.45 Hz-დან 10 MHz-მდე და პერიოდები 0.1-დან 2.2 μs-მდე 7 ავტომატურად შერჩეულ დიაპაზონში. მონაცემები ნაჩვენებია შვიდციფრიან LED ეკრანზე. პროექტი დაფუძნებულია Atmel AVR ATmega88/88A/88P/88PA მიკროკონტროლერზე, შეგიძლიათ იპოვოთ ჩამოსატვირთი პროგრამა ქვემოთ. კონფიგურაციის ბიტის პარამეტრები ნაჩვენებია სურათი 2.

გაზომვის პრინციპი განსხვავდება წინა ორი სიხშირის მრიცხველებისგან. 1 წამის შემდეგ იმპულსების დათვლის მარტივი მეთოდი, რომელიც გამოიყენება წინა ორ სიხშირეზე (სიხშირის მრიცხველი I, სიხშირის მრიცხველი II), არ იძლევა ჰერცის ფრაქციების გაზომვის საშუალებას. ამიტომ მე ავირჩიე სხვა გაზომვის პრინციპი ჩემი ახალი სიხშირის მრიცხველი III. ეს მეთოდი ბევრად უფრო რთულია, მაგრამ იძლევა სიხშირის გაზომვის საშუალებას 0.000001 ჰც-მდე გარჩევადობით.

სიხშირის მრიცხველი II DANYK-დან

ეს არის ძალიან მარტივი სიხშირის მრიცხველი AVR მიკროკონტროლერი. ის საშუალებას გაძლევთ გაზომოთ სიხშირეები 10 MHz-მდე 2 ავტომატურად არჩეულ დიაპაზონში. იგი ეფუძნება წინა სიხშირის მრიცხველის I დიზაინს, მაგრამ აქვს 6 ინდიკატორის ციფრი 4-ის ნაცვლად. ქვედა გაზომვის დიაპაზონს აქვს გარჩევადობა 1 ჰც და მუშაობს 1 მჰც-მდე. უფრო მაღალ დიაპაზონს აქვს გარჩევადობა 10 ჰც და მუშაობს 10 მჰც-მდე. გაზომილი სიხშირის საჩვენებლად გამოიყენება 6-ციფრიანი LED დისპლეი. მოწყობილობა ეფუძნება მიკროკონტროლერს Atmel AVR ATtiny2313Aან ATTiny2313. შეგიძლიათ იხილოთ კონფიგურაციის ბიტის პარამეტრები ქვემოთ.

მიკროკონტროლერი ქრონიკულია კვარცის რეზონატორიდან 20 MHz სიხშირით (მაქსიმალური დასაშვები საათის სიხშირე). გაზომვის სიზუსტე განისაზღვრება ამ ბროლის, ასევე C1 და C2 კონდენსატორების სიზუსტით. გაზომილი სიგნალის მინიმალური ნახევარციკლის სიგრძე უნდა იყოს კვარცის ოსცილატორის სიხშირის პერიოდზე მეტი (AVR არქიტექტურის შეზღუდვა). ამრიგად, 50% სამუშაო ციკლის დროს, შესაძლებელია 10 MHz-მდე სიხშირის გაზომვა.