რობოტიკის წიგნების თარო. EV3 რობოტის პროგრამირების კურსი Lego Mindstorms-ში EV3 EV3 პროგრამირების გაკვეთილი

მთავარი / მყარი დისკები

თუ მოგწონთ გრაფიკული პროგრამირების გარემო Scratch 2.0, მაშინ არ უნდა დაუთმოთ მას რობოტების დაპროგრამება Lego Mindstorms EV3. თქვენ უბრალოდ უნდა დააინსტალიროთ და დააკონფიგურიროთ საჭირო პროგრამული უზრუნველყოფა, რომლის შესახებაც ამ სტატიაში დაიწერება.

სტატია გამიზნული იქნება გაშვებული კომპიუტერების მფლობელებისთვის ფანჯრებითუმცა სტატიაში ნახსენები ყველა პროგრამული უზრუნველყოფა შეიძლება დაინსტალირდეს და გამოიყენოთ გაშვებულ კომპიუტერებზე MacOS, Mac OS Xდა Linux.აქ მოცემულია გეგმის შეჯამება, რომელსაც მივყვებით:

SD ბარათის მომზადება

სანამ რაიმე შემდგომი საქმის კეთებას დაიწყებთ, უნდა იპოვოთ შესაფერისი SD ბარათი, ამოიღეთ მისგან ყველა არასაჭირო დანაყოფი, რომელიც შეიძლება იქ იყოს და დააფორმატეთ. ეს უნდა იყოს ბარათი მინიმუმ მოცულობით 2 GB, მაგრამ არა მეტი 32 GB (SDXC ბარათებიარ არის მხარდაჭერილი მოდულის მიერ EV3).ბარათზე ფაილური სისტემა უნდა იყოს FAT32.დეველოპერები leJOSრეკომენდებულია ბარათის ფორმატირება SD Card Formatter პროგრამის გამოყენებით. ყოველივე ამის შემდეგ, მაშინაც კი, თუ გადაწყვეტთ გამოიყენოთ ახლახან შეძენილი მეხსიერების ბარათი, ის შეიძლება შეიცავდეს ფარული სექციები, რამაც შეიძლება გამოიწვიოს პრობლემები მასთან მუშაობისას EV3.თუმცა, თუ თქვენი SD ბარათი 4 გბ-ზე ნაკლები, მაშინ პროგრამა ავტომატურად ირჩევს ფაილური სისტემა ცხიმიანიდა ეს არ შეიძლება შეიცვალოს პარამეტრებში, ასე რომ, პროგრამის ფორმატირების შემდეგ SD ბარათის ფორმატორიასეთი ბარათების ფორმატირება ფორმატში FAT32სხვა გზით. გარდა ამისა, ძველი ბარათების გამოყენებისას მაქვს 2 GB, leJOS EV3საერთოდ უარი თქვა ჩატვირთვაზე, თუმცა ინსტალაცია წარმატებით დასრულდა. ჩემი გამოცდილებიდან გირჩევთ გამოიყენოთ ახლად შეძენილი ბარათები SDHCმოცულობა 4 - 32 GB(ბარათით ყველაფერი წარმატებით მუშაობს ჩემთვის SDHCმოცულობა 4 GB მე-4 კლასიწარმოება ჭკვიანი ყიდვა).

leJOS EV3 კომპონენტების ინსტალაცია თქვენს კომპიუტერში

leJOSარის პატარა ვირტუალური ჯავის მანქანა, რომელიც 2013 წელს იყო ადაპტირებული სისტემასთან მუშაობისთვის Lego Mindstorms EV3. პროექტის ოფიციალური გვერდი მდებარეობს. გაშვებული კომპიუტერებისთვის ფანჯრებიდეველოპერებმა შექმნეს სადისტრიბუციო ნაკრები, რომელიც შეიცავს მოსამზადებელ პროგრამას SD ბარათები, დოკუმენტაცია და მაგალითები.

მოდით დავაყენოთ leJOS EV3კომპიუტერზე:

      • ჩამოტვირთვა უახლესი ვერსია leJOS EV3 0.9.0-ბეტა). დააინსტალიროთ ფანჯრები- ეს იქნება ფაილი leJOS_EV3_0.9.0-beta_win32_setup.exe.
      • გაუშვით გადმოწერილი დისტრიბუცია თქვენს კომპიუტერში. თქვენ ნახავთ მისალმებას. დააწკაპუნეთ " შემდეგი >».

      • ამ ეტაპზე აირჩიეთ JDK (ჯავის განვითარების ნაკრები) რომელსაც გამოიყენებთ. რეკომენდირებულია გამოყენება ჯავა 7ან 8 . თუმცა, გამოსაყენებლად ჯავა 8თქვენ უნდა შექმნათ შესაფერისი კომპაქტური პროფილი ჯავა,ამიტომაც ჯავა 7უფრო ადვილი გამოსაყენებელი იქნება, რასაც ჩვენ გავაკეთებთ. თუ JDKთქვენ არ გაქვთ ის დაინსტალირებული, დააჭირეთ ღილაკს " ჩამოტვირთეთ JDK"და საიტზე წასვლის შემდეგ Oracle,ჩამოტვირთეთ შესაბამისი JDKდა დააინსტალირეთ თქვენს კომპიუტერში. დააჭირეთ ღილაკს შემდეგი >».

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

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

      • ინსტალაციის შემდეგ ნახავთ საბოლოო ფანჯარას. აქ შეგიძლიათ შეამოწმოთ ყუთი " გაუშვით EV3SDCard პროგრამაოსტატიდან გასვლისას დაუყოვნებლივ გაუშვით SD ბარათის მომზადების პროგრამა.

დააჭირეთ ღილაკს "დასრულება"ჩამრთველით " გაუშვით EV3SDCard პროგრამა» კომპონენტების დაყენების შემდეგ leJOS EV3თქვენს კომპიუტერში ან გაუშვით პროგრამა ხელით ფაილის გაშვებით ev3sdcard.batრომელიც საქაღალდეშია ურნა,საქაღალდის შიგნით, სადაც დააინსტალირეთ leJOS EV3(ჩემთვის ეს არის საქაღალდე" C:\Program Files\leJOS EV3\bin"). გაშვების შემდეგ, თქვენ უნდა ნახოთ ფანჯარა, რომელიც ნაჩვენებია ქვემოთ მოცემულ სურათზე.

ზედა ველში თქვენ უნდა აირჩიოთ თქვენი ბარათის დისკის ასო, ჩემთვის ეს არის დისკი მე:. ქვემოთ მოცემული ველი მიუთითებს გამოსახულების ფაილზე leJOSდა ნაგულისხმევად უკვე უნდა გქონდეთ დარეგისტრირებული სწორი გზა, იხილეთ სურათი ზემოთ. ეს ფაილი შეგიძლიათ იხილოთ საქაღალდეში, სადაც კომპონენტები იყო დაინსტალირებული leJOS EV3(მე მაქვს ეს" C:\Program Files\leJOS EV3"). ქვედა ველში თქვენ უნდა აირჩიოთ ფაილი Runtime გარემოთი ჯავა,რომელიც ჯერ უნდა ჩამოტვირთოთ საიტიდან Oracleაქედან (დარწმუნდით, რომ აირჩიეთ Java 7 JRE, არა Java 8 SDK, თუ რა თქმა უნდა არ აპირებთ კომპაქტური პროფილის შექმნას ჯავა 8). ჩამოსატვირთად დაგჭირდებათ რეგისტრაცია, თუ ეს ჯერ არ გაგიკეთებიათ.

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

დააწკაპუნეთ "კარგი"შემდეგ დახურეთ პროგრამის ფანჯარა და უსაფრთხოდ ამოიღეთ ბარათი კომპიუტერიდან. შემდეგ ჩადეთ ის გამორთულ მოდულში EV3და ჩართეთ იგი ცენტრალური ღილაკის დაჭერით. ლოგო უნდა ნახოთ leJOS EV3და გამოსახულების ფორმატირებისა და ინსტალაციის პროგრესი SD ბარათები. ამას დაახლოებით 8 წუთი სჭირდება. ამ პროცესის დასასრულს მოდული EV3გადაიტვირთება და თქვენ უნდა ნახოთ მენიუ leJOS EV3.

მოგვიანებით, როდესაც ჩართავთ მოდულს EV3ჩასმული SD ბარათით leJOS EV3თქვენი ჩამოტვირთვა დაუყოვნებლივ დაიწყება leJOS EV3და SD ბარათის გარეშე ჩაიტვირთება სტანდარტული პროგრამა LEGO.

Adobe AIR-ის ინსტალაცია თქვენს კომპიუტერში

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

ახლა ჩამოტვირთეთ და დააინსტალირეთ ოფლაინ რედაქტორის უახლესი ვერსია თქვენს კომპიუტერში ნაკაწრი 2(წერის დროს ეს არის ვერსია 437, ფაილი Scratch-437.exe). ინსტალერს აქვს ძალიან ცოტა პარამეტრი, იხილეთ სურათი. მოხსენით მონიშვნა " გაუშვით აპლიკაცია ინსტალაციის შემდეგ"და დააჭირეთ" განაგრძეთ».

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

ev3-scratch-helper-app აპლიკაციის ინსტალაცია თქვენს კომპიუტერზე

შემდეგი რაც უნდა გააკეთოთ არის ასისტენტის აპლიკაციის დაყენება ev3-scratch-helper-appთქვენს კომპიუტერში, რაც შესაძლებელს ხდის ურთიერთქმედებას ნაკაწრიმოდულით EV3(წაიკითხეთ ასისტენტის განაცხადების შესახებ ნაკაწრიშეიძლება). ინსტალაცია შეიძლება განხორციელდეს ორი გზით:

    1. თუ დაინსტალირებული გაქვთ თქვენს კომპიუტერში გიტშემდეგ შეგიძლიათ პროექტის კლონირება ბრძანების გაშვებით git კლონი https://github.com/koen-dejonghe/ev3-scratch-helper-app.git" ეს მეთოდი სასურველია, მაგრამ თუ არ იცით რა გიტანუ მეორე გზა.
    2. ჩამოტვირთეთ და ამოიღეთ zip არქივი პროექტთან ერთად (მე ავირჩიე ეს ვარიანტი). საქაღალდე ev3-scratch-helper-app-master zip არქივის შიგნით მე ამოვიღე ის დისკზე C:.

საქაღალდეში "ნაკაწრი"ინსტალაციის საქაღალდეში შეგიძლიათ იპოვოთ ფაილი " ev3-helper-app.s2e"ინგლისური და ფაილისთვის" ev3-helper-app-NL.s2e» ჰოლანდიური ენები, შესაბამისად, საქაღალდეებში "en"და "nl".თუ გსურთ გამოიყენოთ რუსული, შეგიძლიათ თავად თარგმნოთ ფაილი " ev3-helper-app.s2e"(ფაილის კოდირება d.b. UTF-8) ან აიღეთ ფაილი" ev3-helper-app-RU.s2e"ჩემი თარგმანით (ფაილი" ev3-helper-app-RU.s2e"შეინახეთ ისევე, როგორც ინგლისური და ჰოლანდიური ვერსიები: შექმენით საქაღალდე" ru\ გაფართოებები"და შეინახე იქ). სამწუხაროდ, თქვენ შეგიძლიათ თარგმნოთ მხოლოდ ბლოკების სახელები, მაგრამ არა მნიშვნელობები, წინააღმდეგ შემთხვევაში აპლიკაცია ev3-scratch-helper-appარ იმუშავებს. იმათ. ძრავების და სენსორების სახელები დარჩება ინგლისურად (ძრავებისთვის ეს არის "დიდი"და "საშუალო"სენსორებისთვის - "ფერი", "მანძილი"და "შეხება"და ა.შ.).

ev3-scratch-helper-app აპლიკაციის რუსიფიკაციავერსია: 08/07/2015-დან

ფაილი ev3-helper-app-RU.s2e EV3 ბლოკების რუსიფიკაციისთვის ოფლაინ რედაქტორში Scratch 2.

08/07/2015 3.76 KB 1428

განაცხადის საქაღალდეში შეგიძლიათ იპოვოთ ფაილი " განაცხადი.თვისებები» პარამეტრებით. საჭიროების შემთხვევაში შეცვალეთ პარამეტრები. საკუთრების სახელები თავისთავად საუბრობს, ამიტომ მათ აქ არ აღვწერ. შეცვლის შემდეგ, დარწმუნდით, რომ ქონების ღირებულება არის " სერვერი.პორტი"ფაილში" განაცხადი.თვისებები"უდრის ცვლადის მნიშვნელობას" გაფართოების პორტი"ფაილში" ev3-helper-app.s2e"ან" ev3-helper-app-RU.s2e", იმისდა მიხედვით, თუ რომელ ენობრივ ფაილს გამოიყენებთ.

ev3-scratch-helper-app აპლიკაციის გაშვება

რედაქტორის დაწყებამდე ნაკაწრი 2თქვენ ყოველთვის უნდა გქონდეთ აპლიკაცია გაშვებული ev3-scratch-helper-app. მის გასაშვებად, გააკეთეთ შემდეგი:

    1. გაუშვით კონსოლის ფანჯარა და შეცვალეთ მიმდინარე საქაღალდე საქაღალდეში, სადაც არის აპლიკაცია დაინსტალირებული ev3-scratch-helper-app. მე მაქვს ეს საქაღალდე" C:\ev3-scratch-helper-app", ამიტომ დავურეკე ბრძანებას" cd C:\ev3-scratch-helper-app».
    2. გაუშვით ბრძანება " gradlew.bat bootRun" პირველად გაშვებისას, საჭირო ბიბლიოთეკები ჩამოიტვირთება და დაინსტალირდება თქვენს კომპიუტერში, ამიტომ დარწმუნდით, რომ თქვენი კომპიუტერი დაკავშირებულია ინტერნეტთან. პირველ გაშვებას დიდი დრო დასჭირდება, მოთმინება.

აპლიკაციის დაწყების შემდეგ, კონსოლში ნახავთ შემდეგ შეტყობინებებს:

2015-08-06 09:15:28.699 INFO 10236 --- s.b.c.e.t.TomcatEmbeddedServletContainer: Tomcat დაწყებულია პორტ(ებ)ზე: 4321/http 2015-08-06 09:103 sc : აპლიკაცია დაიწყო 13,411 წამში (JVM მუშაობს 15,025)

შემდგომი გაშვებისთვის, მოხერხებულობისთვის, შეგიძლიათ შექმნათ მალსახმობი, მაგალითად, სამუშაო მაგიდაზე. ასე გამოიყურება მალსახმობების თვისებები დაინსტალირებული აპლიკაციასაქაღალდეში " C:\ev3-scratch-helper-app»:

განაცხადის დაწყებისას ev3-scratch-helper-appუკავშირდება პირველ ხელმისაწვდომ მოდულს EV3ონლაინ. თუ მოდული არ არის აღმოჩენილი, მაშინ აპლიკაცია ელოდება ერთის გამოჩენას.

Scratch 2 ოფლაინ რედაქტორის პირველი გაშვება

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

EV3 პროგრამის ბლოკების დამატება Scratch 2 რედაქტორში

გაშვების შემდეგ ავტომატურად იქმნება ახალი ცარიელი პროექტი. ახლა ამ პროექტისთვის საჭიროა ბლოკების იმპორტი EV3,ამისათვის გეჭიროთ გასაღები "ცვლა"დააჭირეთ მენიუს " ფაილი -> ექსპერიმენტული HTTP გაფართოების იმპორტი"და აირჩიეთ ფაილი ev3-helper-app.s2eან ev3-helper-app-RU.s2e, დამოკიდებულია თქვენთვის სასურველ ენაზე. მე შევარჩიე ფაილი " C:\ev3-scratch-helper-app-master\scratch\ru\extensions\ev3-helper-app-RU.s2e" ეს პროცედურა უნდა გაკეთდეს ერთხელ ყოველი ახალი პროექტისთვის.

ამის შემდეგ გახსენით " სკრიპტები»დააწკაპუნეთ « სხვა ბლოკები» და დარწმუნდით, რომ ჩვენი ბლოკები აქ გამოჩნდება. მიზანშეწონილია შეამოწმოთ ბლოკების არსებობა ყოველ ჯერზე ადრე შენახული პროექტის გახსნის შემდეგ. მწვანე წრე სახელის მარჯვნივ " EV3HelperApp“ ნიშნავს, რომ აპლიკაცია v3-scratch-helper-appგაშვებულია. თუ წრე წითელია, ეს ნიშნავს, რომ აპლიკაცია v3-scratch-helper-appარ მუშაობს და საჭიროა გაშვება.

EV3 Brick-ის კომპიუტერთან დაკავშირება

მოდულის დაკავშირება EV3თქვენ შეგიძლიათ წვდომა თქვენს კომპიუტერში ორი გზით: მეშვეობით Bluetoothან WiFi.

მეშვეობით დასაკავშირებლად WiFiუნდა გქონდეს USB WiFi ადაპტერი. leJOS EV3მხარს უჭერს ადაპტერებს ჩიპსეტებით ათეროსი ATH9Kდა Realtex 8192cu. EV3 Brick გამოცდილი დეველოპერების მიერ გადამყვანებით NetGear WNA1100და EDIMAX EW-7811Un, მაგრამ სხვა გადამყვანები შეიძლება იყოს მხარდაჭერილი, თუ ისინი იყენებენ რომელიმე ჩამოთვლილ ჩიპსეტს. აქ არ განვიხილავ დაკავშირებას WiFiრადგან ყველას არ აქვს სწორი ადაპტერი. მაგრამ თუ თქვენ დაინტერესებული ხართ ასეთი კავშირით, მაშინ შეგიძლიათ გაიგოთ, თუ როგორ უნდა გააკეთოთ ეს ოფიციალური წყაროდან.

მეშვეობით დასაკავშირებლად Bluetoothთქვენ ჯერ უნდა დააკავშიროთ მოდული ერთმანეთთან EV3და კომპიუტერი და მერე გააკეთე პირადი ბლუთუზი ქსელი(PAN).

EV3 Brick-ის თქვენს კომპიუტერთან დაკავშირება საჭიროა მხოლოდ ერთხელ წყვილში. EV3 მოდული - კომპიუტერი»:

1. EV3 Brick-ში მთავარ მენიუში leJOS EV3იპოვნეთ მენიუს ელემენტი "Bluetooth"და შედით შიგნით EV3 Brick-ის ცენტრალურ ღილაკზე დაჭერით. თუ ხედავთ წარწერას " ხილვადობა ჩართულია", მაშინ ყველაფერი რიგზეა: ჩართულია მოდულის ხილვადობა. თუ ხედავთ წარწერას " ხილვადობა გამორთულია", შემდეგ იპოვნეთ მენიუს ელემენტი "ხილვადობა"(თვალის გამოსახულებით) და დააჭირეთ მოდულის ცენტრალურ ღილაკს EV3ორჯერ ხილვადობის გასააქტიურებლად (ეტიკეტი უნდა შეიცვალოს " ხილვადობა ჩართულია»).
2. თქვენს კომპიუტერში გახსენით „ მართვის პანელი -> აპარატურა და ხმა -> მოწყობილობები და პრინტერები" თქვენ ნახავთ თქვენს კომპიუტერთან დაკავშირებული მოწყობილობების სიას.

3. დარწმუნდით, რომ Bluetoothკომპიუტერი ჩართულია და დააჭირეთ ღილაკს ზედა მოწყობილობის დამატება" გამოჩნდება დიალოგური ფანჯარა, რომელშიც მოდული უნდა გამოჩნდეს გარკვეული პერიოდის შემდეგ EV3.დააწკაპუნეთ მასზე და შემდეგ დააჭირეთ " შემდეგი».

4. შემდეგ ეტაპზე ნახავთ კავშირის არჩევანს. დააჭირეთ მეორე ვარიანტს და შედით PIN კოდი 1234 .

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

    1. გახსენი" მართვის პანელი -> ქსელი და ინტერნეტი -> ქსელი და გაზიარების ცენტრი საზიარო წვდომა "და დააწკაპუნეთ" ადაპტერის პარამეტრების შეცვლა» ფანჯრის მარცხენა პანელში.
    2. აქ უნდა ნახოთ" ქსელის კავშირი Bluetooth"წითელი ჯვრით. ერთხელ დააწკაპუნეთ ამ ხატულაზე მის ასარჩევად.
    3. დააჭირეთ ღილაკს ზედა ხედი ქსელური მოწყობილობები Bluetooth».
    4. გარკვეული პერიოდის შემდეგ, ამომხტარ ფანჯარაში ნახავთ ერთ ან მეტ წვდომის წერტილს. დააწკაპუნეთ აქ ჩვენს მოწყობილობაზე " EV3"შეარჩიეთ იგი და დააჭირეთ მენიუს პუნქტს" დაკავშირება -> წვდომის წერტილის საშუალებით».

EV3 Robot-ის დაპროგრამება Scratch 2 რედაქტორში

რობოტების დაპროგრამებისას EV3რედაქტორის გამოყენებით ნაკაწრიდა გაფართოებები ev3-scratch-helper-appუნდა გახსოვდეთ, რომ ძრავების და სენსორების გამოყენებამდე ისინი უნდა იყოს დაკავშირებული ბლოკების გამოყენებით. შეაერთეთ ძრავა პორტთან"და" შეაერთეთ სენსორი პორტში» (« შეაერთეთ ძრავა პორტში"და" შეაერთეთ სენსორი პორტშიბლოკების ინგლისური ვერსიის გამოყენებისას). სენსორები გამორთულია " დახურეთ ყველა პორტი» (« დახურეთ ყველა პორტი"ინგლისურ ვერსიაში).

აკონტროლეთ რა ხდება აპლიკაციაში ev3-scratch-helper-appშეგიძლიათ იხილოთ შეტყობინებები კონსოლში.

იმის შესამოწმებლად, გვაქვს თუ არა ყველაფერი სწორად კონფიგურირებული, აკრიფეთ მარტივი ურიკა, მაგალითად, სტანდარტული დისკის პლატფორმა და ჩაწერეთ მისთვის უმარტივესი პროგრამანაკაწრი 2. თქვენ შეგიძლიათ ნახოთ მაგალითები საქაღალდეებში " დოკ"და" scratch\en\demos» პროგრამის ინსტალაციის საქაღალდეში ev3-scratch-helper-app. დემო პროგრამების გახსნისას ნაკაწრი 2შეამოწმეთ არის თუ არა ბლოკები EV3, როგორც ზემოთ აღწერილია "" განყოფილებაში.

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

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

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

    სტატიას ვამაგრებ სურათზე ნაჩვენები პროგრამის ფაილს:

    შეკრების ინსტრუქციები Educator EV3 სტანდარტული წამყვანი პლატფორმისთვის
    პროგრამა Scratch 2-ისთვის EV3 რობოტთან ურთიერთქმედების შესამოწმებლადვერსია: 08/07/2015-დან

    პროგრამა Scratch 2-ისთვის EV3 რობოტთან ურთიერთქმედების შესამოწმებლად.

    08/07/2015 45.65 KB 1157

    ქვედა ხაზი

    ამ სტატიიდან ისწავლეთ როგორ დააყენოთ ოფლაინ რედაქტორი ნაკაწრი 2რობოტების დაპროგრამებისთვის LEGO Mindstorms EV3და ასევე ვისწავლეთ როგორ დაიწყოთ პროგრამირება მისი გამოყენებით. სამწუხაროდ, პროგრამირების შემთხვევაში ნაკაწრი 2მოდული EV3მუდმივად უნდა იყოს დაკავშირებული კომპიუტერთან Bluetoothან WiFi, ე.ი. ეს არ არის ავტონომიური. მიუხედავად იმისა, რომ აქ არის კარგი ბონუსები - რობოტის მართვა შესაძლებელია კომპიუტერიდან, მაგალითად, ბორბლებზე მყოფი რობოტის მართვა შესაძლებელია ისრის ღილაკების ან W, A, S და D ღილაკების გამოყენებით არ არის ნათელი.

    გამარჯობა. ჩემს სტატიებში მინდა გაგაცნოთ LEGO NXT Mindstorms 2.0 მიკროკომპიუტერის პროგრამირების საფუძვლები. აპლიკაციების შესაქმნელად გამოვიყენებ Microsoft Robotics Developer Studio 4 (MRDS 4) და National Instruments LabVIEW (NI LabVIEW) პლატფორმებს. განიხილება და განხორციელდება მობილური რობოტების ავტომატური და ავტომატური მართვის ამოცანები. ჩვენ გადავალთ მარტივიდან რთულზე.

    ველოდებით მკითხველთა კითხვებსა და კომენტარებს.

    რატომ NXT Mindstorms 2.0?იმიტომ რომ ეს ნაკრები მეჩვენებოდა ყველაზე შესაფერისი ჩემი პროექტებისთვის, რადგან... NXT მიკროკომპიუტერი სრულად თავსებადია MRDS 4 და NI LabVIEW პლატფორმებთან და ეს ნაკრები ასევე ძალიან მოქნილია რობოტის სხვადასხვა კონფიგურაციის აწყობის თვალსაზრისით - მინიმალური დრო იხარჯება რობოტის აწყობაზე.

    რატომ MRDS 4 და NI LabVIEW პლატფორმები?ასე მოხდა ისტორიულად. უნივერსიტეტში სწავლის დროს, ამოცანა იყო ამ პლატფორმების გამოყენებით საგანმანათლებლო კურსების შემუშავება. გარდა ამისა, პლატფორმები საკმაოდ მარტივი შესასწავლი და ფუნქციონალურია მათი გამოყენებით, შეგიძლიათ დაწეროთ პროგრამა უშუალოდ რობოტის გასაკონტროლებლად, მომხმარებლის ინტერფეისის შესაქმნელად და ტესტირების ჩატარება ვირტუალურ გარემოში (MRDS 4-ის შემთხვევაში).

    ვის სჭირდება მაინცდამაინც თქვენი ეს გაკვეთილები, ინტერნეტში უკვე უამრავი რობოტიკის პროექტია!პრაქტიკულად არ არსებობს საგანმანათლებლო სტატიები ამ კომბინაციის გამოყენებით (NXT+MRDS 4/NI LabVIEW), ძირითადად გამოიყენება მშობლიური პროგრამირების გარემო და მასში ყველაფერი სრულიად ტრივიალურია. ვისაც აინტერესებს რობოტიკა, პროგრამირება და აქვს NXT კომპლექტი (და საკმაოდ ბევრია), ნებისმიერი ასაკის აუდიტორია.

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

    ეს ყველაფერი ბავშვურად გამოიყურება და არასერიოზულად!როდესაც ამოცანაა ალგორითმების დანერგვა, პროგრამირების, რობოტიკის, რეალურ დროში სისტემების საფუძვლების და პრინციპების სწავლება მიკროსქემებსა და პროტოკოლებში ჩაღრმავების გარეშე, მაშინ ეს არის ძალიან შესაფერისი ინსტრუმენტი, თუმცა არც თუ ისე იაფი (რაც შეეხება NXT კომპლექტს). მიუხედავად იმისა, რომ Arduino-ზე დაფუძნებული კომპლექტები საკმაოდ შესაფერისია იმავე მიზნებისთვის, ამ კონტროლერს თითქმის არ აქვს თავსებადობა MRDS 4-თან და NI LabVIEW-თან და ამ პლატფორმებს აქვთ საკუთარი ხიბლი.

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

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

    MRDS 4 და NI LabVIEW პლატფორმების მოკლე მიმოხილვა. ნება მომეცით დავაზუსტო რამდენიმე ტერმინოლოგია. პლატფორმის ქვეშ, შიგნითამ შემთხვევაში

    , ვგულისხმობთ სხვადასხვა ხელსაწყოების ერთობლიობას, მაგალითად VPL ენას MRDS-ში, ასევე აპლიკაციის გაშვების გარემოს, ე.ი. არ არის აპლიკაციების პირდაპირი შედგენა შესრულებად (*.exe) ფაილებში. 2006 წელს მაიკროსოფტმა გამოაცხადა პლატფორმის შექმნა(დაწვრილებით ვიკიპედიის სტატიაში). MRDS არის Windows-ზე დაფუძნებული აპლიკაციების განვითარების გარემო რობოტიკისა და სიმულაციისთვის. ამჟამად, ამჟამინდელი ვერსიაა Microsoft Robotics Developer Studio 4. მახასიათებლებს შორისაა: გრაფიკული პროგრამირების ენა VPL, ვებ და ვინდოუსზე ორიენტირებული ინტერფეისები, VSE სიმულაციური გარემო, გამარტივებული წვდომა სენსორებზე, რობოტის მიკროკონტროლერებსა და აქტუატორებზე, C# პროგრამირების მხარდაჭერა. ენა, ბიბლიოთეკები მრავალ ხრახნიანი პროგრამირებისთვის და CCR და DSS აპლიკაციების განაწილებული შესრულება, მრავალი რობოტული პლატფორმის მხარდაჭერა (Eddie, Boe - Bot, CoroBot, iRobot, LEGO NXT და ა.შ.).

    LabVIEW (ლაბორატორიული ვირტუალური ინსტრუმენტების საინჟინრო სამუშაო მაგიდა)არის დეველოპერული გარემო და პლატფორმა პროგრამების შესასრულებლად, რომელიც შექმნილია პროგრამირების გრაფიკულ ენაზე „G“ National Instruments-დან (დაწვრილებით იხილეთ ვიკიპედიის სტატია). LabVIEW გამოიყენება მონაცემთა შეგროვებისა და დამუშავების სისტემებში, ასევე ტექნიკური ობიექტებისა და ტექნოლოგიური პროცესების მართვისთვის. იდეოლოგიურად, LabVIEW ძალიან ახლოს არის SCADA სისტემებთან, მაგრამ მათგან განსხვავებით, ის უფრო მეტად არის ორიენტირებული პრობლემების გადაჭრაზე არა იმდენად ავტომატური პროცესის კონტროლის სისტემების სფეროში (ავტომატური პროცესის კონტროლის სისტემები), არამედ ASNI-ს სფეროში ( ავტომატური სისტემებისამეცნიერო კვლევა). LabVIEW-ში გამოყენებული გრაფიკული პროგრამირების ენა "G" ეფუძნება მონაცემთა ნაკადის არქიტექტურას. ასეთ ენებზე ოპერატორების შესრულების თანმიმდევრობა განისაზღვრება არა მათი გამოჩენის თანმიმდევრობით (როგორც იმპერატიული პროგრამირების ენებში), არამედ ამ ოპერატორების შეყვანებში მონაცემების არსებობით. ოპერატორები, რომლებიც არ არიან დაკავშირებული მონაცემებთან, შესრულებულია პარალელურად შემთხვევითი თანმიმდევრობით. LabVIEW პროგრამა ეწოდება და არის ვირტუალური ინსტრუმენტი (ინგლისურად: Virtual Instrument) და შედგება ორი ნაწილისგან:

    • ბლოკ-სქემა, რომელიც აღწერს ვირტუალური ინსტრუმენტის ლოგიკას;
    • წინა პანელი, რომელიც აღწერს ვირტუალური ინსტრუმენტის მომხმარებლის ინტერფეისს.

    სწრაფი გადახედვა LEGO NXT Mindstorms 2.0 კომპლექტზე.

    NXT ნაკრები შედგება საკონტროლო განყოფილებისგან, ოთხი სენსორისგან და სამი სერვოსგან. საკონტროლო ბლოკი შეიცავს:
    • 32-ბიტიანი AVR7 მიკროკონტროლერი 256 KB FLASH მეხსიერებით და 64 KB ოპერატიული მეხსიერება;
    • 8-ბიტიანი AVR მიკროკონტროლერი 4 KB FLASH მეხსიერებით და 512 ბაიტი ოპერატიული მეხსიერებით;
    • Bluetooth V 2.0 რადიო მოდული;
    • USB პორტი;
    • 3 კონექტორი სერვოების დასაკავშირებლად;
    • 4 კონექტორი სენსორების დასაკავშირებლად;
    • LCD დისპლეი 99x63 პიქსელის გარჩევადობით;
    • სპიკერი;
    • კონექტორი 6 AA ბატარეისთვის.
    სენსორები (სენსორების სხვადასხვა ნაკრები ხელმისაწვდომია სხვადასხვა კონფიგურაციებში):
    • ულტრაბგერითი სენსორი;
    • ორი ტაქტილური სენსორი (შეხების სენსორები);
    • ფერის გამოვლენის სენსორი.


    სურათი 1 - NXT მიკროკომპიუტერი დაკავშირებული სენსორებითა და აქტივატორებით

    და, რა თქმა უნდა, ნაკრები შეიცავს LEGO-ს სხვადასხვა ნაწილებს LEGO Technic-ის ფორმის ფაქტორში, საიდანაც შეიკრიბება ამძრავები და დამხმარე სტრუქტურა.


    სურათი 2 - დეტალები LEGO Technic-ის ფორმის ფაქტორში

    ჩვენ ვწერთ პირველ განაცხადს.

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

    ჩვენ ჯერ ვაინსტალირებთ MRDS 4 და NI LabVIEW პლატფორმებს MRDS 4-ის შემთხვევაში, ინსტალაცია უნდა განხორციელდეს საქაღალდეში, რომლის გზაც არ შედგება კირიულისგან (რუსული ასოები); ანგარიშიმომხმარებლის სახელი ასევე უნდა შედგებოდეს მხოლოდ ლათინური ასოებისგან.

    1. MRDS 4 პლატფორმა.
    გაუშვით VPL გარემო (დაწყების მენიუ - ყველა პროგრამა - Microsoft Robotics Developer Studio 4 - ვიზუალური პროგრამირების ენა). ეს გარემო საშუალებას გაძლევთ განავითაროთ აპლიკაციები VPL ენაზე და ჩაატაროთ ტესტირება VSE ვირტუალურ გარემოში. VPL პროგრამა არის დიაგრამა, რომელიც შედგება ერთმანეთთან დაკავშირებული ბლოკებისგან. ფანჯარაში, რომელიც იხსნება, სტანდარტული ბრძანების ზოლისა და მენიუს გარდა, არის 5 ძირითადი ფანჯარა:
    1. ძირითადი აქტივობები – შეიცავს ძირითად ბლოკებს, რომლებიც ახორციელებენ ოპერატორებს, როგორიცაა მუდმივი, ცვლადი, მდგომარეობა და ა.შ.;
    2. სერვისები – შეიცავს ბლოკებს, რომლებიც უზრუნველყოფენ წვდომას MRDS პლატფორმის ფუნქციონირებაზე, მაგალითად, ბლოკებს რობოტის ნებისმიერ აპარატურულ კომპონენტთან ურთიერთობისთვის, ან ბლოკებს დიალოგური ფანჯრის გამოძახებისთვის;
    3. პროექტი – აერთიანებს პროექტში ჩართულ დიაგრამებს, ასევე სხვადასხვა კონფიგურაციის ფაილებს;
    4. თვისებები – შეიცავს არჩეული ბლოკის თვისებებს;
    5. დიაგრამების ფანჯარა – შეიცავს პირდაპირ დიაგრამას ( წყარო კოდი) აპლიკაციები.

    სურათი 3 - VPL პროგრამირების გარემო

    მოდით შევასრულოთ მოქმედებების შემდეგი თანმიმდევრობა:

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


    სურათი 8 - LabVIEW გარემოს Windows

    ჩვენ გამოვიყენებთ ბლოკ დიაგრამის ფანჯარას. მოდით შევასრულოთ შემდეგი ნაბიჯები:

    რეზიუმე

    • ჩვენ განვიხილეთ პროგრამული პლატფორმები NXT მიკროკომპიუტერისთვის აპლიკაციების შესაქმნელად.
    • ჩვენ გადავხედეთ აპლიკაციის განვითარების ძირითად პრინციპებს MRDS 4 და NI LabVIEW პლატფორმებზე.
    • ჩვენ გავეცანით გარემოს ინტერფეისს.
    შემდეგ სტატიებში უშუალოდ NXT პროგრამირებას შევეხებით. არსებობს უამრავი სასწავლო მასალა ინტერნეტში LabVIEW გარემოსთვის, მაგრამ გაცილებით ნაკლები VPL-ისთვის. უაღრესად გირჩევთ სწავლას საცნობარო სახელმძღვანელოორივე პლატფორმაზე (საჭიროა ინგლისური ენის ცოდნა), ამ სახელმძღვანელოებში არის უამრავი მაგალითი, რომელიც შეიძლება განხორციელდეს NXT-ის გარეშე, ასევე შემდეგი წიგნები:
    • NXT მიკროკომპიუტერის დაპროგრამება LabVIEW-ში - ლიდია ბელიოვსკაია, ალექსანდრე ბელიოვსკი,
    • Microsoft Robotics Developer Studio. პროგრამირებადი რობოტის მართვის ალგორითმები - ვასილი გაი.
    ჩემს სტატიებში აღვწერ მხოლოდ ჩემს პროექტებს, რადგან... მე ვერ ვხედავ აზრს ინფორმაციის ერთი წყაროდან მეორეზე გადაწერაში. მე მივიღებ ნებისმიერ კონსტრუქციულ კრიტიკას და ვუპასუხებ ნებისმიერ შეკითხვას განხილულ პლატფორმებთან დაკავშირებით. მადლობა წინასწარ!

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

    • აირჩიეთ გუნდი "ფაილი" - "პროგრამის დამატება" (Ctrl+N).
    • დააწკაპუნეთ "+" პროგრამების ჩანართზე.

    ბრინჯი. 1

    2.1. პროგრამირების პალიტრები და პროგრამის ბლოკები

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

    მწვანე პალიტრას ჰქვია: "მოქმედება":

    ბრინჯი. 2

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

    2.2. მწვანე პალიტრა - სამოქმედო ბლოკები

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

    ბრინჯი. 3

    ამისთვის სწორი პარამეტრებისაკონტროლო განყოფილება დიდი ძრავისთვის ჩვენ უნდა:

    1. აირჩიეთ პორტი, რომელზეც ძრავა არის დაკავშირებული (A, B, C ან D) (ნახ. 3 პუნქტი 1)
    2. აირჩიეთ ძრავის მუშაობის რეჟიმი (ნახ. 3 პუნქტი 2)
    3. შერჩეული რეჟიმის პარამეტრების კონფიგურაცია (ნახ. 3 პუნქტი 3)

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

    სიმძლავრის პარამეტრს (ნახ. 3-ში სიმძლავრე დაყენებულია 75-ზე) შეიძლება მიიღოს მნიშვნელობები -100-დან 100-მდე. პოზიტიური სიმძლავრის მნიშვნელობები ადგენს ძრავის ბრუნვას საათის ისრის მიმართულებით, უარყოფითი მნიშვნელობები ადგენს ძრავას ბრუნვას საათის ისრის საწინააღმდეგოდ. 0-ის სიმძლავრის დროს, ძრავა არ ბრუნავს, რაც უფრო მაღალია სიმძლავრის მნიშვნელობა, მით უფრო სწრაფად ბრუნავს ძრავა.

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

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

    შემდეგი ორი პროგრამის ბლოკი "საჭე"და განახორციელეთ წყვილი დიდი ძრავის კონტროლი. სტანდარტულად, მარცხენა დიდი ძრავა დაკავშირებულია პორტთან "IN", ხოლო მარჯვენა - პორტამდე "თან". მაგრამ თქვენ შეგიძლიათ შეცვალოთ კავშირის პორტები ერთეულის პარამეტრებში თქვენი დიზაინის მოთხოვნების შესაბამისად ( ბრინჯი. 4 პოზ. 1).

    ბრინჯი. 4

    პარამეტრი "საჭე" (ბრინჯი. 4 პოზ. 2) შეუძლია მიიღოს მნიშვნელობები -100-დან 100-მდე. პარამეტრის უარყოფითი მნიშვნელობები იწვევს რობოტის მარცხნივ შემობრუნებას, 0-ის მნიშვნელობა იწვევს რობოტის პირდაპირ მოძრაობას, ხოლო დადებითი მნიშვნელობები იწვევს რობოტის მარჯვნივ გადახვევას. რიცხვითი პარამეტრის ზემოთ ისარი ცვლის მის ორიენტაციას მნიშვნელობიდან გამომდინარე, რითაც მიუთითებს რობოტის მოძრაობის მიმართულებაზე ( ბრინჯი. 5).

    ბრინჯი. 5

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

    ბრინჯი. 6

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

    2.3. სწორხაზოვანი მოძრაობა, მოხვევა, შემობრუნება და გაჩერება

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

    ამოცანა 1:იმოძრავეთ პირდაპირ წინ ძრავის 4 ბრუნისთვის. შემობრუნდი. იმოძრავეთ 720 გრადუსით.

    გამოსავალი ( ბრინჯი. 7):

    1. "საჭის" პროგრამული უზრუნველყოფის ბლოკის გამოყენებით, გაიარეთ წინ 4 ბრუნი.
    2. „დამოუკიდებელი ძრავის კონტროლის“ პროგრამული ბლოკის გამოყენებით, შემობრუნდით ადგილზე (ხარისხის მნიშვნელობა უნდა შეირჩეს ექსპერიმენტულად).
    3. "საჭის" პროგრამული უზრუნველყოფის ბლოკის გამოყენებით, იმოძრავეთ წინ 720 გრადუსით.

    შენიშვნა: რატომ უნდა აერჩია ხარისხის მნიშვნელობა შემობრუნებისას? ბლოკი 2?. არა 360 გრადუსი - სასურველი მნიშვნელობა? არა, თუ ჩვენ დავაყენეთ პარამეტრის მნიშვნელობა "ხარისხები"თანაბარი 360 , მაშინ ამით ვაიძულებთ ჩვენი რობოტის მარცხენა და მარჯვენა ძრავების ლილვებს საჭირო რაოდენობით ბრუნონ. კუთხე, რომლითაც რობოტი ბრუნავს თავისი ღერძის გარშემო, დამოკიდებულია ბორბლების ზომაზე (დიამეტრზე) და მათ შორის მანძილზე. ჩართულია ბრინჯი. 7პარამეტრის მნიშვნელობა "ხარისხები"უდრის 385 . ეს მნიშვნელობა საშუალებას აძლევს რობოტს აწყობილი ინსტრუქციის მიხედვით პატარა რობოტი 45544შემობრუნდა თავისი ღერძის გარშემო. თუ თქვენ გაქვთ განსხვავებული რობოტი, მაშინ მოგიწევთ აირჩიოთ სხვა მნიშვნელობა. შეიძლება თუ არა ამ მნიშვნელობის მათემატიკურად პოვნა? შესაძლებელია, მაგრამ ამაზე მოგვიანებით ვისაუბრებთ.


    ბრინჯი. 7

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

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

    2.4. ეკრანი, ხმა, მოდულის სტატუსის მაჩვენებელი

    პროგრამის ბლოკი "ეკრანი"საშუალებას გაძლევთ აჩვენოთ ტექსტური ან გრაფიკული ინფორმაცია EV3 Brick-ის LCD ეკრანზე. რა პრაქტიკული გამოყენება შეიძლება ჰქონდეს ამას? პირველ რიგში, პროგრამის პროგრამირებისა და გამართვის ეტაპზე, შეგიძლიათ აჩვენოთ სენსორის მიმდინარე წაკითხვები, სანამ რობოტი მუშაობს. მეორეც, შეგიძლიათ აჩვენოთ პროგრამის შესრულების შუალედური ეტაპების სახელი. ისე, მესამე, დახმარებით გრაფიკული სურათებიშეგიძლიათ რობოტის ეკრანის „ანიმაცია“, მაგალითად, ანიმაციის გამოყენებით.

    ბრინჯი. 8

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

    ბრინჯი. 9

    მოდით შევხედოთ პროგრამის ბლოკის პარამეტრებს "ეკრანი"რეჟიმში "ტექსტი" (ნახ. 9 პუნქტი 1). ეკრანზე გამოსატანად განკუთვნილი სტრიქონი შეიტანება სპეციალურ ველში (ნახ. 9 პუნქტი 2). სამწუხაროდ, ტექსტის შეყვანის ველში შეგიძლიათ შეიყვანოთ მხოლოდ ლათინური ასოები, რიცხვები და პუნქტუაციის ნიშნები. თუ რეჟიმი "ეკრანის გასუფთავება"დააყენეთ მნიშვნელობა "მართალია", ეკრანი გასუფთავდება ინფორმაციის ჩვენებამდე. ამიტომ, თუ საჭიროა მიმდინარე გამომავალი ინფორმაციის გაერთიანება უკვე ეკრანზე, მაშინ დააყენეთ ეს რეჟიმი "ტყუილი". რეჟიმები "X"და "Y"განსაზღვრეთ ეკრანის წერტილი, საიდანაც იწყება ინფორმაციის გამოტანა. EV3 Brick ეკრანი არის 178 პიქსელი (წერტილი) სიგანე და 128 პიქსელი სიმაღლე. რეჟიმი "X"შეუძლია მიიღოს მნიშვნელობები 0-დან 177-მდე, რეჟიმი "Y"შეუძლია მიიღოს მნიშვნელობები 0-დან 127-მდე. ზედა მარცხენა წერტილს აქვს კოორდინატები (0, 0), ქვედა მარჯვენა (177, 127)

    ბრინჯი. 10

    პროგრამის ბლოკის დაყენებისას "ეკრანი"შეგიძლიათ ჩართოთ გადახედვის რეჟიმი (ნახ. 9 პუნქტი 3)და ვიზუალურად შეაფასეთ ინფორმაციის გამომავალი პარამეტრების შედეგი.

    რეჟიმში "ფორმები" (ნახ. 11 პუნქტი 1) პროგრამის ბლოკის პარამეტრები განსხვავდება ფიგურის ტიპის მიხედვით. ასე რომ, წრის ჩვენებისას, თქვენ უნდა მიუთითოთ კოორდინატები "X"და "Y"წრის ცენტრი, ისევე როგორც მნიშვნელობა "რადიუსი". პარამეტრი „შევსება“ (ნახ. 11 პუნქტი 2)პასუხისმგებელია იმ ფაქტზე, რომ ან გამოჩნდება ფიგურის მონახაზი, ან ფიგურის შიდა ფართობი შეივსება პარამეტრში მითითებული ფერით. "ფერი" (ნახ. 11 პუნქტი 3).

    ბრინჯი. 11

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

    ბრინჯი. 12

    მართკუთხედის საჩვენებლად, თქვენ უნდა მიუთითოთ კოორდინატები "X"და "Y"მართკუთხედის ზედა მარცხენა კუთხე, ისევე როგორც მისი "სიგანე"და "სიმაღლე".

    ბრინჯი. 13

    წერტილის ჩვენება ყველაზე მარტივი გზაა! უბრალოდ მიუთითეთ მისი კოორდინატები "X"და "Y".

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

    ბრინჯი. 14

    როგორც ხედავთ, პროგრამირების გარემო დიდ მნიშვნელობას ანიჭებს ინფორმაციის ჩვენებას EV3 Main Brick ეკრანზე. მოდით შევხედოთ შემდეგ მნიშვნელოვან პროგრამულ ბლოკს "ხმა". ამ ბლოკის გამოყენებით ჩვენ შეგვიძლია გამოვიტანოთ ხმოვანი ფაილები, თვითნებური ხანგრძლივობისა და სიხშირის ტონები, ასევე მუსიკალური ნოტები EV3 ბლოკის ჩაშენებულ დინამიკზე. მოდით შევხედოთ პროგრამული ბლოკის პარამეტრებს რეჟიმში "თამაშის ტონი" (სურ. 15). ამ რეჟიმში თქვენ უნდა დააყენოთ "სიხშირე"ტონები (ნახ. 15 პუნქტი 1), "ხანგრძლივობა"ხმა წამებში (ნახ. 15 პუნქტი 2), ასევე ხმის მოცულობა (ნახ. 15 პუნქტი 3).

    ბრინჯი. 15

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

    ბრინჯი. 16

    რეჟიმში "ფაილის თამაში"შეგიძლიათ აირჩიოთ ერთ-ერთი ხმოვანი ფაილი ბიბლიოთეკიდან (ნახ. 17 პუნქტი 1), ან მიკროფონის თქვენს კომპიუტერთან დაკავშირებით ხმის რედაქტორის გამოყენებით ("პროგრამირების გარემოს მთავარი მენიუ" - "ინსტრუმენტები" - "ხმის რედაქტორი")ჩაწერეთ საკუთარი ხმის ფაილიდა ჩართეთ პროექტში.

    ბრინჯი. 17

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

    უბრალოდ უნდა გავეცნოთ მწვანე პალიტრის ბოლო პროგრამულ ბლოკს - ბლოკს. EV3 მოდულის მართვის ღილაკების გარშემო დამონტაჟებულია ფერის ინდიკატორი, რომელიც შეიძლება ანათებდეს სამ ფერში ერთ-ერთში: მწვანე, ფორთოხალიან წითელი. შესაბამისი რეჟიმი პასუხისმგებელია ფერის აღნიშვნის ჩართვა-გამორთვაზე (ნახ. 18 პუნქტი 1). პარამეტრი "ფერი"ადგენს მითითების ფერის დიზაინს (ნახ. 18 პუნქტი 2). პარამეტრი "იმპულსი"პასუხისმგებელია ფერის მითითების ციმციმის რეჟიმის ჩართვა/გამორთვაზე (ნახ. 18 პუნქტი 3). როგორ შეგიძლიათ გამოიყენოთ ფერის აღნიშვნა? მაგალითად, შეგიძლიათ გამოიყენოთ სხვადასხვა ფერის სიგნალები რობოტის მუშაობის სხვადასხვა რეჟიმის დროს. ეს დაგვეხმარება გავიგოთ, მიმდინარეობს თუ არა პროგრამა ისე, როგორც ჩვენ დავგეგმეთ.

    ბრინჯი. 18

    მოდით გამოვიყენოთ ეს ცოდნა პრაქტიკაში და გავაფერადოთ ჩვენი პროგრამა ამოცანა 1-დან.

    ამოცანა 3:

    1. სიგნალის დაკვრა "დაწყება"
    2. ჩართეთ მწვანე არ მოციმციმე ფერის ჩვენება
    3. "წინ"
    4. იმოძრავეთ პირდაპირ წინ ძრავის 4 ბრუნისთვის.
    5. ჩართეთ ნარინჯისფერი მოციმციმე ფერის ჩვენება
    6. შემობრუნდი
    7. ჩართეთ მწვანე მოციმციმე ფერის ჩვენება
    8. გამოსახულების ჩვენება ეკრანზე "უკან"
    9. იმოძრავეთ 720 გრადუსით
    10. სიგნალის დაკვრა "გაჩერდი"

    სცადეთ მე-3 პრობლემის გადაჭრა თავად, გამოსავლის ყურების გარეშე! წარმატებები!

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

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

    NXT-თან შედარებით დაემატა 2 ახალი ბლოკი:

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


    "დაწყების" დაბლოკვა

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

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


    ყველა ასეთი თანმიმდევრობა შესრულდება ერთდროულად.

    გთხოვთ გაითვალისწინოთ, რომ ბლოკზე მწვანე ისარი არ არის დეკორატიული ელემენტი. თუ მოწყობილობა დაკავშირებულია კომპიუტერთან (არ აქვს მნიშვნელობა როგორ: usb, wi-fi ან bluetooth-ის საშუალებით), მაშინ ისრის დაჭერით დაიწყება ეს თანმიმდევრობა შესასრულებლად.

    დაბლოკეთ "ლოდინი"

    ეს ბლოკი ასევე ერთ-ერთი ყველაზე ხშირად გამოიყენება. პროგრამა "იყინება" მასზე - პროგრამის შემდგომი ბლოკები არ არის შესრულებული - და ელოდება გარკვეულ დროს ან სენსორის გარკვეულ მნიშვნელობას.
    "ლოდინს" აქვს უამრავი რეჟიმი, რაც შეიძლება საშინელი იყოს:


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

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

    შემდეგი პროგრამა ჩართავს A ძრავას და 5 ბრუნის შემდეგ გამორთავს მას:

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

    "ციკლის" დაბლოკვა

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

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

    შემდეგი პროგრამა იყენებს სენსორს. სანამ მას არ დააჭერთ, რობოტი ატრიალებს შუა ძრავას ჯერ საათის ისრის მიმართულებით, შემდეგ საათის ისრის საწინააღმდეგოდ. სენსორის დაჭერის შემდეგ, ძრავა ჩერდება:

    მრიცხველის მარყუჟი საშუალებას გაძლევთ დაკვრათ ნოტი 10-ჯერ:

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


    "გადამრთველი" ბლოკი

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

    შემდეგი პროგრამა არის მარტივი სარელეო კონტროლერის განხორციელება შავი ხაზის გასწვრივ მართვისთვის:

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


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

    ღილაკი, რომელიც გადადის ბრტყელ/დეტალურ რეჟიმებს შორის, წითლად არის შემოხაზული.

    "ციკლის შეფერხების" დაბლოკვა

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

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

    ლ.იუ. ოვსიანიცკაია, დ.ნ. ოვსიანიცკი, ახ. ოვსიანიცკი

    EV3 Robot პროგრამირების კურსი

    Lego Mindstorms EV3 გარემოში

    მეორე გამოცემა, შესწორებული და გაფართოებული

    UDC 004.42+004.896

    ოვსიანიცკაია, ლ.იუ. პროგრამირების კურსი ლეგოს რობოტი

    Mindstorms EV3 EV3 გარემოში: ed. მეორე, შესწორებული და დამატებითი /

    ლ.იუ. ოვსიანიცკაია, დ.ნ. ოვსიანიცკი, ახ. ოვსიანიცკი. - მ.:

    „პერო“, 2016. – 296გვ.

    ISBN 978-5-906862-76-1

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

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

    მიმომხილველი:

    ფიზიკა-მათემატიკის მეცნიერებათა დოქტორი, პროფესორი ა.ფ. შორიკოვი.

    ISBN 978-5-906862-76-1 © ლ.იუ. ოვსიანიცკაია, დ.ნ. ოვსიანიცკი, ახ. ოვსიანიცკი, 2016 სარჩევი შესავალი

    თავი 1. რობოტის მახასიათებლები.

    პირველი პროექტის შექმნა და გაშვება 7

    1.1. მოკლე აღწერარობოტული პლატფორმები. Lego Mindstorms EV3 პროგრამირების გარემოს მიმოხილვა

    1.2. რობოტის კომპიუტერთან დაკავშირების გზები. EV3 Brick firmware განახლება. პროგრამების ატვირთვა EV3 Brick-ზე



    თავი 2. რობოტის დაპროგრამება

    2.1. ძრავები. მოძრაობების პროგრამირება სხვადასხვა ტრაექტორიის გასწვრივ

    2.2. მუშაობა განათებაზე, ეკრანზე და ხმაზე

    2.2.1. ეკრანთან მუშაობა

    2.2.2. მუშაობა განათებული ღილაკებით EV3 Brick-ზე

    2.2.3. ხმასთან მუშაობა

    2.3. პროგრამის სტრუქტურები

    2.3.1. სტრუქტურის მოლოდინი

    2.3.2. სტრუქტურის ციკლი

    2.3.3. გადართვის სტრუქტურა

    2.4. მონაცემებთან მუშაობა

    2.4.1. მონაცემთა ტიპები. დირიჟორები

    2.4.2. ცვლადები და მუდმივები

    2.4.3. მათემატიკური მოქმედებები მონაცემებით

    2.4.5. მასივებით მუშაობა

    2.4.6. ლოგიკური ოპერაციებიმონაცემებით

    2.5. სენსორებთან მუშაობა

    2.5.1. სენსორული სენსორი

    2.5.2. ფერის სენსორი

    2.5.3 გიროს სენსორი

    2.5.4. ულტრაბგერითი სენსორი

    2.5.5. ინფრაწითელი სენსორი და შუქურა

    2.5.6. ძრავის ბრუნვის სენსორი (ბრუნების კუთხის/რაოდენობის და ძრავის სიმძლავრის განსაზღვრა)

    2.5.7. მოდულის მართვის ღილაკები

    2.6. ფაილებთან მუშაობა

    Lego Mindstorms EV3 რობოტის პროგრამირების კურსი EV3 გარემოში

    2.7. რამდენიმე რობოტის თანამშრომლობა

    2.7.1. რობოტების დაკავშირება USB კაბელით

    2.7.2. რობოტის კომუნიკაცია Bluetooth კავშირის გამოყენებით...................................... 207

    2.8. სასარგებლო ბლოკებიდა ხელსაწყოები

    2.8.1. დაბლოკვა „შეინარჩუნე აქტიური“

    2.8.2. დაბლოკეთ "Stop program"

    2.8.3. რუტინების შექმნა

    2.8.4. კომენტარების ჩაწერა

    2.8.5. სადენიანი შეყვანის პორტის გამოყენებით

    თავი 3. შეჯიბრების ძირითადი ტიპები და ამოცანების ელემენტები.

    3.1. სუმოს კონკურსი

    3.2. კეგელრინგი

    3.3. სლალომი (დაბრკოლებების თავიდან აცილება)

    3.4. ხაზის მოძრაობის პროგრამირება

    3.4.1. ზიგზაგის ხაზის გასწვრივ გადაადგილების ალგორითმი ერთი და ორი ფერის სენსორებით

    3.4.2. ალგორითმი "ტალღა"

    3.4.3. ფერის სენსორის ავტომატური კალიბრაციის ალგორითმი..... 258

    3.5. პროპორციული ხაზოვანი კონტროლი

    3.5.1. ხაზის მოძრაობა პროპორციული კონტროლის საფუძველზე

    3.5.2. კვეთების პოვნა და დათვლა პროპორციული ხაზის კონტროლით

    3.5.3. მოგზაურობის ინვერსია

    3.5.4. რობოტის მოძრაობა კედლის გასწვრივ

    3.6. მიზნის პოვნა ლაბირინთში

    თავი 4: პროგრამული უზრუნველყოფის განახლება და EV3 Brick-ის გადატვირთვა.

    286 თავი 5. მესამე მხარის სენსორების გამოყენება

    5.1. მუშაობა HiTech ფერის სენსორთან

    5.2. სხვა სენსორების გამოყენება

    დასკვნა

    პროექტების სია პროექტი „ერთგული ძაღლი“ 90 პროექტი „სპორტული საანგარიშო დაფა“ 98 პროექტი „ავტო დასრულება“ 102 პროექტი „60 წამი“ 109 პროექტი „ფერადი შტრიხკოდის ჩაწერა და წაკითხვა“ 120 პროექტი „მასივის დახარისხება პროექტის ბუშტების მეთოდით“ 12 ჭკვიანი სახლი» 153 პროექტი „ჯიუტი რობოტი“ 160 პროექტი „რობოტი თან დისტანციური მართვა» 182 პროექტი ანიმაციური თამაში EV3 ბლოკის ეკრანზე „დაიჭირე თოვლის ბურთი“ 191 პროექტი „3D ზედაპირის რუკის აგება“ 197 პროექტი „EV3 - მუსიკის სინთეზატორი“ 203 Lego Mindstorms EV3 რობოტის პროგრამირების კურსი EV3 გარემოს გამოსახულებაზე ხვეული (სურ. 1.1.11ბ). ბლოკი გახდება აქტიური (ნათელი) (სურ. 1.1.11c).

    –  –  –

    სურათი 1.1.

    12. პარალელური პროგრამები სურათების მასშტაბირება (ნახ. 1.1.13 a, b) გამოიყენება MSWindows-ის სტანდარტული კომბინაციები Ctrl კლავიშისა და მაუსის გადახვევის ბორბალი ან ხატები ფანჯრის ზედა მარჯვენა კუთხეში:. სკალირება გამოიყენება დიდ პროგრამებში ნავიგაციისას, კონკრეტული ბლოკების კოპირებისას და მრავალი სხვა.

    Lego Mindstorms EV3 რობოტის პროგრამირების კურსი EV3 გარემოში Blocks Large motor and Medium motor პალიტრის პირველ ბლოკს ეწოდება Medium motor, მეორეს ეწოდება Large motor. ბლოკები გამოიყენება ერთი ძრავის გასაკონტროლებლად და აქვთ იგივე ფუნქციონირება.

    მოდით შევხედოთ ბლოკების სტრუქტურას დიდი საავტომობილო ბლოკის მაგალითის გამოყენებით (ნახ. 2.1.4).

    –  –  –

    სურათი 2.1.

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

    მოდით უფრო ახლოს მივხედოთ თითოეულ საკონტროლო ელემენტს.

    1. აირჩიეთ მუშაობის რეჟიმი:

    ა) ჩართვა (სურ. 2.1.5);

    –  –  –

    სურათი 2.4.

    3.4. პროექტის „60 წამის“ განხორციელების პროგრამა

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

    ანალოგიით დაამატეთ წუთის და საათის ისრები.

    2.4.4. მონაცემთა დამუშავების სხვა ბლოკები

    –  –  –

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

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

    მასივის შექმნა. მასივის ჩაწერა ცვლადში

    იმისათვის, რომ შექმნათ და შეავსოთ მასივი, თქვენ უნდა:

    (ა) გადაიტანეთ Variable ბლოკი სამუშაო სივრცეში და განსაზღვრეთ მისი რეჟიმი (Write) და ტიპი (რიცხობრივი ან ლოგიკური მასივი);

    ფორმირება ლოგიკური მასივის რიცხვითი მასივის ფორმირება

    –  –  –

    სურათი 2.5.

    3.3. გიროსკოპული სენსორის მუშაობის რეჟიმები მნიშვნელოვანია!

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

    სენსორის მნიშვნელობების გაზრდა თავი 2. რობოტის პროგრამირება 177 თუ შუქურა ძალიან შორს არის (1 მ-ზე მეტი), გაზომვის მნიშვნელობა იქნება 100, თუ ძალიან ახლოს (მინიმუმ 1 სმ) - 0. შუალედური შედეგები ასევე არ შეესაბამება სანტიმეტრამდე.

    იმ შემთხვევაში, როდესაც შუქურა მდებარეობს პირდაპირ სენსორის წინ, კუთხის გაზომვის შედარებითი შედეგი იქნება 0-ის ტოლი, შუქურის მაქსიმალური მდებარეობა მარცხნივ, საათის ისრის საწინააღმდეგოდ არის -25 (მაქსიმალური შესამჩნევი გადახრის კუთხე არის დაახლოებით 100 გრადუსი), მარჯვნივ, საათის ისრის მიმართულებით არის 25 (სურ. 2.5. 5.5).

    სურათი 2.5.

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

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

    შუქურა გამორთულია, თუ ერთი საათის განმავლობაში არ გამოიყენება.

    ნახ. 2.5.5.6 გვიჩვენებს მუშაობის რეჟიმის არჩევანს შუქურთან.

    Lego Mindstorms EV3 რობოტის პროგრამირების კურსი EV3 გარემოში MS Excel-ის გამოყენებით.

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

    გამოსავალი:

    1. გადააყენეთ გიროსკოპის სენსორის მნიშვნელობები.

    ჩვენ ჩავსვით ციკლი 01, შეწყვეტის პირობა არის დრო (3 წამი).

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

    3. გაზომვის შედეგი ციკლის ყოველ საფეხურზე იწერება Map ფაილში.

    4. დააყენეთ პაუზა 0,25 წამით. ციკლის დასრულების შემდეგ დახურეთ ფაილი.

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

    განყოფილება 2.5.3 დრიფტის მოსაშორებლად).

    თავი 2. რობოტის 213 გადაადგილების და გაჩერების დაპროგრამება, თითოეული თრეილერის თანმიმდევრულად კვება.

    2. „ვოკალური და ინსტრუმენტული ანსამბლი“

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

    3. "ცეკვის ანსამბლი"

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

    4. "დილის ვარჯიშები"

    ამოცანაა ერთდროულად შეასრულოთ ტანვარჯიშის ვარჯიშები პირველი რობოტის ბრძანებით.

    2.8. სასარგებლო ბლოკები და ხელსაწყოები 2.8.1. დაბლოკვა „შეინარჩუნე აქტიური“

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

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

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

    მოვიყვანოთ პროგრამული ალგორითმის მაგალითი რობოტი სუმოისტისთვის.

    რობოტის გაჩერება.

    2. რობოტი ბრუნავს მანამ, სანამ არ დაინახავს მოწინააღმდეგის რობოტს ულტრაბგერითი სენსორით (სანამ სენსორის მნიშვნელობა არ გახდება 100 სმ-ზე ნაკლები), რაც შეესაბამება ბრუნვის კუთხეს 120-180 გრადუსამდე. რობოტის გაჩერება.

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

    4. 01 ციკლში ჩავსვით ციკლი 02, რომლის შეწყვეტის პირობაა ლოგიკური მნიშვნელობა: მარყუჟი შესრულდება მანამ, სანამ შეწყვეტის პირობების შეყვანა არ იქნება True.

    თავი 3. შეჯიბრებების ძირითადი ტიპები და ამოცანების ელემენტები 245 100 25 + 18 =.

    ვიპოვოთ მარცხენა ბორბლის სიჩქარე: V1=58.

    ალგორითმის განსახორციელებლად დააინსტალირეთ ულტრაბგერითი სენსორი რობოტის წინ ცენტრში და დააკავშირეთ იგი მე-4 პორტთან.

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

    დავალებები დამოუკიდებელი მუშაობისთვის

    დაპროგრამეთ ბილიკები:

    ა) ერთი და იგივე რადიუსის რამდენიმე დაბრკოლების თავიდან აცილება;

    ბ) სხვადასხვა რადიუსის მქონე დაბრკოლებების თავიდან აცილება;

    გ) რვა ფიგურაში გასეირნება.

    თავი 3. შეჯიბრების ძირითადი ტიპები და ამოცანების ელემენტები 275 ნახაზი 3.

    5.3.2. მოძრაობის შებრუნებული ტრაექტორიის მართვის პროგრამა თავი 3. შეჯიბრების ძირითადი ტიპები და ამოცანების ელემენტები 285 ნახაზი 3.6.5. ლაბირინთში მიზნის პოვნის პროგრამა Lego Mindstorms EV3 რობოტის პროგრამირების კურსი EV3 გარემოში.

    თავი 5. მესამე მხარის გამოყენება

    სენსორები

    გარდა სენსორებისა, რომლებიც შედის Lego Mindstorms EV3 სახლის ან საგანმანათლებლო კომპლექტებში, არის HiTechnic-ისგან დამატებითი Lego სენსორების და ლეგოს სერტიფიცირებული სენსორების შეძენის შესაძლებლობა.

    კომპანია HiTechnic აწარმოებს დიდი რაოდენობა LEGO Mindstorms-ის სენსორები, მათი უმეტესობა სერტიფიცირებულია LEGO-ს მიერ, რაც ადასტურებს სრულ თავსებადობას, ხარისხისა და უსაფრთხოების მაღალ სტანდარტებს.

    ასევე მნიშვნელოვანი ფაქტორი, რომელიც საშუალებას აძლევს ამ სენსორების გამოყენებას ბავშვებთან მუშაობისას არის RoHS სერთიფიკატის არსებობა (საშიში ნივთიერებების შეზღუდვა), რომელიც ადასტურებს ნივთიერებების გამოყენების არარსებობას ელექტრო და ელექტრონულ აღჭურვილობაში: ტყვია, ვერცხლისწყალი, კადმიუმი, კალა, ექვსვალენტიანი ქრომი და ზოგიერთი ბრომიდის ნაერთი. Lego-ს სერტიფიცირებული სენსორების მიმდინარე სიისთვის ეწვიეთ www.hitechnic.com/sensors.

    ამჟამად ხელმისაწვდომია: ბრუნვის კუთხის სენსორი;

    ღერძზე განივი მიმართული ძალა; კომპასი; აქსელერომეტრი;

    გიროსკოპი; მაგნიტური ველის დეტექტორი; ინფრაწითელი სენსორი;

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

    ელექტრო-ოპტიკური მანძილის სენსორი, რომელიც ზუსტად ამოიცნობს პატარა ობიექტებს და მცირე ცვლილებებს მათთან დაშორებით, მაგრამ არაუმეტეს ~20 სმ მანძილზე; ფერის სენსორი

    © 2024 ermake.ru -- კომპიუტერის შეკეთების შესახებ - საინფორმაციო პორტალი