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

მთავარი / Windows 7

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

თუ გირჩევნიათ ინფორმაცია ვიდეო გაკვეთილის ფორმატში, მაშინ საიტზე არის ვიდეო გაკვეთილი

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

მარტივი რობოტის ბრძანებები

ჩვენს რობოტს ასევე აქვს ბრძანების სისტემა. დღეს ჩვენ გადავხედავთ რობოტის მარტივი ბრძანებები. სულ 5 მათგანია:

  • ზევით
  • დატოვა
  • უფლება
  • გადაღება

ამ ბრძანებების შესრულების შედეგი აშკარაა მათი სახელებიდან:

  1. ზევით- გადაიტანეთ რობოტი ერთი უჯრედით ზემოთ
  2. ქვემოთ- გადაიტანეთ რობოტი ერთი უჯრედით ქვემოთ
  3. დატოვა— გადაიტანეთ რობოტი ერთი უჯრედი მარცხნივ
  4. უფლება— გადაიტანეთ რობოტი ერთი უჯრედი მარჯვნივ
  5. გადაღება- დახატეთ მიმდინარე უჯრედზე (უჯრედი, რომელშიც მდებარეობს რობოტი).

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

  • ზევით - გაქცევა, ზემოთ (ზემო ისარი)
  • ქვემოთ - გაქცევა, ქვევით (ქვემოთ ისარი)
  • მარცხნივ - გაქცევა, მარცხნივ (მარცხენა ისარი)
  • მარჯვნივ - გაქცევა, მარჯვნივ (მარჯვენა ისარი)
  • ხატვა – გაქცევა, სივრცე (სივრცე)

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

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

მოდით გავუშვათ Idol, ის. შემიძლია პროგრამის წერა დავიწყო? რა თქმა უნდა არა! ჩვენ არ ვართ! მოდით გავაკეთოთ. მე გირჩევთ გამოიყენოთ ეს:

ახლა ყველაფერი მზადაა. დავიწყოთ პროგრამის წერა. მიუხედავად იმისა, რომ ის ასე გამოიყურება

"|" სიმბოლოს ამოღება და უწოდეთ ჩვენს ალგორითმს "კვადრატი"

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

ვცადოთ პროგრამის გაშვება და ვნახოთ რა მოხდება. დასაწყებად დააჭირეთ F9ან ღილაკი ხელსაწყოების პანელზე

შედეგად, ჩვენ უნდა ვნახოთ ასეთი სურათი

თუ ასეთი რობოტის ფანჯარა არ გამოჩნდება თქვენთვის, მაშინ ინსტრუმენტთა პანელზე დააწკაპუნეთ “ რობოტის ფანჯრის ჩვენება"ან Robot მენიუში აირჩიეთ" რობოტის ფანჯრის ჩვენება". გავაგრძელოთ შემდგომ.

ახლა ჩვენ გადავალთ ქვემოთ და დავხატავთ მარჯვენა მხარეკვადრატი:

ქვემოთ

გადაღება

ქვემოთ

გადაღება

შემდეგ გადავიდეთ მარცხნივ, დავხატოთ კვადრატის ქვედა საზღვარი

დატოვა

გადაღება

დატოვა

გადაღება

დაგვრჩა ერთი შეუღებავი უჯრედი. მოდი დავხატოთ

ზევით

გადაღება

ყველაფერი მზადაა! შედეგად, ჩვენი პროგრამა ასე გამოიყურება:

გამოიყენეთ რობოტი

ალგ მოედანი

დასაწყისი

გადაღება

უფლება

გადაღება

უფლება

გადაღება

ქვემოთ

გადაღება

ქვემოთ

გადაღება

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

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

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

ჩაჯდომის გაკეთება

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

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

გაიმეორეთ 7 ჯერ

ჩაჯდომის გაკეთება

ციკლის დასასრული

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

ციკლების სახეები.

მარყუჟი მრიცხველით.

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

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

nc<გამეორებების რაოდენობა> ჯერ

<команда 1>

<команда 2>

<команда n>

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

მოდით შევხედოთ ამას მაგალითით.

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

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

გადაღება

უფლება

გადაღება

უფლება

გადაღება

უფლება

გადაღება

უფლება

გადაღება

უფლება

გადაღება

უფლება

გადაღება

უფლება

როგორც ხედავთ, ბრძანებები ხატვისა და მარჯვნივ მეორდება 7-ჯერ. მოდით ახლა გადავიწეროთ პროგრამა მარყუჟის გამოყენებით. სხვათა შორის, თქვენს პროგრამაში ციკლის ჩასასმელად, შეგიძლიათ მენიუში გადასვლა ჩასმააირჩიეთ ელემენტი ცკ-ცკ-ცკან დააჭირეთ კლავიშთა ერთ-ერთ კომბინაციას ესკი, პ(რუსული ასო R) ან ესკი, ჰ(ლათინური ასო H). მეტიც ღილაკები თანმიმდევრულად უნდა დააჭიროთ- ჯერ Esc, გამოუშვით და მხოლოდ ამის შემდეგ P ან H.

ასე რომ, აქ არის ჩვენი მარყუჟის პროგრამაასე გამოიყურება:

გამოიყენეთ რობოტი

nts 7-ჯერ

გადაღება

უფლება

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

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

პირობითი მარყუჟი.

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

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

ნახვამდის არ დაიღალა

ჩაჯდომის გაკეთება

ციკლის დასასრული

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

უფასო თავზე

თავისუფალი ქვემოდან

თავისუფალი დარჩა

თავისუფალი მარჯვნივ

კედელი ზემოთ

კედელი ქვემოთ

მარცხენა კედელი

კედელი მარჯვნივ

მაგრამ GIA-ს 19-ე დავალების პირობებში მითითებულია მხოლოდ პირველი 4, ასე რომ, ჩვენ მხოლოდ მათ გამოვიყენებთ.

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

ჯერ ჩამოვაყალიბოთ ვერბალური ალგორითმი – ანუ სიტყვებით აღვწეროთ რა უნდა გააკეთოს რობოტმა. ეს ალგორითმი დაახლოებით ასე ჟღერს:

« სანამ მარჯვნივ არის თავისუფალი ადგილი, გადადგით ნაბიჯი მარჯვნივ და დახატეთ უჯრედი »

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

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

გამოიყენეთ რობოტი

nts უფლება ამჟამად თავისუფალია

უფლება

გადაღება

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




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




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


აღმასრულებელი Robot მენიუს ბრძანებები Robot Show Robot ველი ხდის Robot დაკვირვების ფანჯარას ხილულს. ბეჭდვის პარამეტრი ქმნის ფაილს PDF ფორმატში, რომელიც ასახავს მიმდინარე ვითარებას ფერად ან შავ-თეთრად. შეინახეთ გარემო ფაილში Creates ტექსტური ფაილისიტუაციის აღწერით შიდა *.fil ფორმატში. ეს ფაილი შეიძლება მოგვიანებით ჩაიტვირთოს, როგორც საწყისი გარემო (ბრძანება Change starting environment) ან საწყისი გარემოს რედაქტირებისას (Open starting environment editing window ბრძანება). საწყისი გარემოს შეცვლა აყენებს ახალი საწყისი გარემოს ფაილის სახელს (სტანდარტული დიალოგის გამოყენებით) და იტვირთება ახალი საწყისი გარემო. საწყის გარემოში დაბრუნება აქცევს საწყის გარემოს აქტუალურს.


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


შემსრულებელი რობოტის მაგალითი 1. შევქმნათ ალგორითმი სახელწოდებით „რაინდის მოძრაობა“, რათა რობოტმა შეძლოს A წერტილიდან B წერტილამდე გადასვლა (ნახ. 3). ალგორითმი ჰგავს (ნახ. 4.). მისი შესრულების შემდეგ რობოტი გადავა სასურველ წერტილში (სურ. 5). შემსრულებლის ენაზე დაწერილ ალგორითმს პროგრამა ეწოდება. სურ.3ნახ.4 ნახ.5











მასწავლებლის ამოცანაა გაიაროს ეს გზა მოსწავლესთან ერთად, არა დაზღვეული წარუმატებლობისგან, არამედ თავიდან აიცილოს იმედგაცრუება შესაძლო სირთულეების გამო. ძალიან მნიშვნელოვანია კლასების ორგანიზება ისე, რომ ბავშვებმა თავად აღმოაჩინონ ახალი რამ მათთვის მნიშვნელოვანი აქტივობებით.
როგორ ეხმარება რობოტი კომპიუტერული მეცნიერების შესწავლაში? მე მივუთითებ მხოლოდ რამდენიმე კომპიუტერული მეცნიერების თემას, რომლებზეც დაფუძნებულია რობოტიკა.
თემა "ფაილები და ფაილური სისტემა".
სტუდენტს ხელთ ჰქონდა LEGO®NXT მიკროკომპიუტერი სასწავლო კომპლექტიდან LEGO Mindstorms NXT განათლება. აკონტროლე ფაილური სისტემახდება სტანდარტული ბრძანებების გამოყენებით, მაგრამ რადგან მეხსიერების მოცულობა არ არის დიდი, კონტროლი იმაზე, თუ რა არის საჭირო და რა არ არის საჭირო, მუდმივად უნდა განხორციელდეს. რობოტის მოქმედებების გასახმოვანებლად, სურათის ჩვენების ან სამუშაო პროგრამების ბიბლიოთეკაში დასამატებლად, თქვენ უნდა იმოქმედოთ კომპიუტერული მეცნიერების ძირითადი ცნებებით: ფაილი, ფაილის ტიპი, ფაილის გზა, მენიუ, საქაღალდე.
თემა: „საინფორმაციო პროცესები“, „ინფორმაციის კოდირება“.
რობოტული ნაკრები აღჭურვილია სენსორებით, რომლებიც ჩაწერენ აუდიო, ტაქტილურ და ვიდეო ინფორმაციას. მას შემდეგ რაც ციფრული გახდება, ინფორმაცია შეიძლება გამოჩნდეს ჩვენების ეკრანზე. მიკროკომპიუტერის სპეციალური ფუნქცია შესაძლებელს ხდის ექსპერიმენტებს სენსორებთან და ძრავებთან მზა პროგრამების გამოყენებით. სენსორებით ექსპერიმენტების სერიის ჩატარების შემდეგ ჩნდება გაგება: რატომ მუშაობს ულტრაბგერითი მანძილის სენსორი უფრო ნელა ვიდრე ინფრაწითელი სინათლის სენსორი, როგორ იქცევა ხმა ციფრულ კოდად და ა.შ. საინფორმაციო პროცესებისა და ინფორმაციის კოდირების პრინციპების შესწავლა უზრუნველყოფს საინფორმაციო ტექნოლოგიების არსის უფრო ღრმად გააზრებას.

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

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

მაგალითად, მინდა მოვიყვანო კლასგარეშე აქტივობების დროს მე-6 კლასის მოსწავლის მიერ შექმნილი „რობოტების პროგრამირების“ კურსის „რობოტის პროგრამირების“ მოდელის მოდელი. რობოტი აწყობილია LEGO MINDSTORMS NXT Education 9797 კომპლექტიდან სტანდარტული Alpharex 1.0 მოდელის მიხედვით და მას ავსებს ფერის სენსორი, რომელიც მიუთითებს რობოტის სტატუსზე და ლანგარზე.
სამუშაოს მიზანია ადამიანის სიარულის მოდელის შეძლებისდაგვარად დანერგვა არსებული რესურსებით. თითოეული ფეხის მოძრაობა კონტროლდება ძრავით და გადაცემათა და ბერკეტების მექანიკური შეკრებით. ერთი ბერკეტი აწევს ფეხს ზევით-ქვევით, მეორე კი წინ. ამ შემთხვევაში სხეული გადაიხრება საყრდენი ფეხისკენ, რის გამოც რობოტი ინარჩუნებს წონასწორობას. ამ სიარულის ეწოდება "არევა"
ცალკე ძრავა აკონტროლებს დისტანციის სენსორს და ბერკეტის მკლავებს, რომლებიც იკავებენ შეხების სენსორს და ფერის სენსორს. სამკურნალო უჯრა ფიქსირდება.
რობოტი დაპროგრამებულია, რომ იმოქმედოს როგორც მიმწოდებელი, მაგალითად, უფასო კერძები, შემდეგი ქცევის ალგორითმის მიხედვით. რობოტი თავის მოძრაობას თან ახლავს პირდაპირი ფრაზით: "მე ვარ რობოტი ალფარექსი, მე გთავაზობთ უფასო სიამოვნებას!" ადამიანს, რომელსაც სურს რობოტთან კონტაქტის დამყარება, შეუძლია მისი შეჩერება ჟესტით. გაჩერების შემდეგ რობოტი ამბობს ფრაზას: "დაეხმარე საკუთარ თავს და დააჭირე ღილაკს!" კანფეტის მიღების შემდეგ ადამიანმა მადლიერების ნიშნად ერთხელ უნდა დააჭიროს ღილაკს. გაჩერებიდან სამი წამის შემდეგ რობოტი განაგრძობს მოძრაობას. როდესაც კერძები ამოიწურება (რობოტი დაპროგრამებულია ისე, რომ უჯრაზე ჰქონდეს ტკბილეულის გარკვეული რაოდენობა), რობოტი დაემშვიდობება, წითელი მაჩვენებელი აინთება და რობოტი გაჩერდება.

რობოტის მართვის პროგრამა დაწერილია NXT Programming 2.0 გარემოში.

Idol პროგრამა

შემსრულებელი რობოტი


ვინ არის რობოტის შემსრულებელი?

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

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

  • გაშვებული Idol პროგრამა ასე გამოიყურება.

რობოტის დაწყების გარემო

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

დააწკაპუნეთ გარემოს რედაქტირება



შემსრულებელი რობოტი. მარტივი ბრძანებები.

  • ზევით
  • ქვემოთ
  • დატოვა
  • უფლება
  • გადაღება

ამ ბრძანებების შესრულების შედეგი აშკარაა მათი სახელებიდან:

  • ზემოთ - გადაიტანეთ რობოტი ერთი უჯრედის ზემოთ
  • ქვემოთ - გადაიტანეთ რობოტი ერთი უჯრედი ქვემოთ
  • მარცხნივ - გადაიტანეთ რობოტი ერთი უჯრედი მარცხნივ
  • მარჯვნივ - გადაიტანეთ რობოტი ერთი უჯრედი მარჯვნივ
  • paint over - ხატავს მიმდინარე უჯრედს (უჯრედი, რომელშიც რობოტი მდებარეობს).

ალგორითმის მაგალითი

  • ჯერ უნდა დაწეროთ ფრაზა:
  • გამოყენება რობოტი

თუ იცით, რამდენი უჯრედის დახატვაა საჭირო, მაშინ ამოხსნის ალგორითმი იქნება შემდეგი!


დავალება No1

  • დაწერეთ პროგრამა შემდეგი ამოცანის გადასაჭრელად, თუ იცით რამდენი უჯრედის დაჩრდილვაა საჭირო

ციკლები

  • 1. მარყუჟი მრიცხველით გამოიყენება მაშინ, როდესაც წინასწარ არის ცნობილი, რამდენი გამეორებაა საჭირო.

nc ჯერ

ქც

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



დავალება No2

  • დაწერეთ პროგრამა შემდეგი ამოცანის გადასაჭრელად მრიცხველის მქონე მარყუჟის გამოყენებით

  • 2. მარყუჟი პირობით - სანამ პირობა არის true, მარყუჟი დაკმაყოფილებულია, თუ false, არ არის დაკმაყოფილებული
  • რობოტის შემსრულებელს რამდენიმე პირობა აქვს

უფასო თავზე

თავისუფალი ქვემოდან

თავისუფალი დარჩა

თავისუფალი მარჯვნივ

კედელი ზემოთ

კედელი ქვემოთ

მარცხენა კედელი

კედელი მარჯვნივ

  • ნაწილაკები, რომელთა გამოყენება შეგიძლიათ: არა, და, ან

პირობითი მარყუჟის სტრუქტურა

nts ამჟამად თავისუფალი მარჯვნივ

უფლება

გადაღება

ქც



დავალება No3

  • დაწერეთ პროგრამა შემდეგი პრობლემის გადასაჭრელად პირობითი ციკლის გამოყენებით:

დავალება No4

  • დაწერეთ პროგრამა შემდეგი პრობლემის გადასაჭრელად პირობითი მარყუჟების გამოყენებით:



პრობლემის გადაჭრა:

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


დავალება No5

  • უსასრულო ველზე ჰორიზონტალური კედელია. კედლის სიგრძე უცნობია. რობოტი მდებარეობს კედლის თავზე მის მარცხენა ბოლოში. ფიგურაში ნაჩვენებია რობოტის მდებარეობა კედელთან შედარებით (რობოტი მითითებულია ასო "P"):

პასუხი No5 დავალებაზე

  • ncჯერ არა (ქვემოდან თავისუფალი)

გადაღება

ციკლის დასაწყისი (nc) და პირობა (ჯერ არ არის (ქვემოდან თავისუფალი)) იწერება ერთ ხაზზე.



დიზაინი თუ

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

დავალება No7

კედლების სიგრძე უცნობია.


პასუხი No7 დავალებაზე

სანამ ზედა არ იქნება თავისუფალი

გადაღება

უფლება

ხოლო ზედა თავისუფალია

უფლება

მაშინ როცა ის უფასოა მარჯვნივ

გადაღება

უფლება

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება

ქვემოთ

მაშინ როცა ის უფასოა მარჯვნივ

ქვემოთ

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება

ქვემოთ


დავალება No8

კედლების სიგრძე უცნობია.

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


პასუხი No8 დავალებაზე

ხოლო ზედა თავისუფალია

სანამ ზედა არ იქნება თავისუფალი

გადაღება

ხოლო ზედა თავისუფალია

სანამ ზედა არ იქნება თავისუფალი

გადაღება

სანამ ქვედა არ არის თავისუფალი

გადაღება

ხოლო ქვედა თავისუფალია

სანამ ქვედა არ არის თავისუფალი

გადაღება


დავალება No9

კედლების სიგრძე უცნობია.

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


პასუხი No9 დავალებას

ხოლო ქვედა თავისუფალია

სანამ ქვედა არ არის თავისუფალი

გადაღება

ხოლო ქვედა თავისუფალია

სანამ ქვედა არ არის თავისუფალი

გადაღება

სანამ ზედა არ იქნება თავისუფალი

გადაღება

ხოლო ზედა თავისუფალია

სანამ ზედა არ იქნება თავისუფალი

გადაღება


დავალება No10

კედლების სიგრძე უცნობია.

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


პასუხი No10 დავალებაზე

ხოლო მარცხენა თავისუფალია

ხოლო მარცხენა თავისუფალია

გადაღება

ხოლო მარცხენა თავისუფალია

სანამ მარცხენა თავისუფალია

გადაღება

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება

მაშინ როდესაც ის უფასოა მარჯვნივ

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება


დავალება No11

კედლების სიგრძე უცნობია.

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


პასუხი No11 დავალებაზე

სანამ ზედა არ იქნება თავისუფალი

სანამ ზედა არ იქნება თავისუფალი

გადაღება

ხოლო ქვედა თავისუფალია

სანამ ზედა არ იქნება თავისუფალი

გადაღება


დავალება No12

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


პასუხი No12 დავალებაზე

კიბეების ქვეშ ჩავდივართ მარჯვნიდან მარცხნივ, სანამ არ მივაღწევთ კიბეების შეერთებას:

nts ბოლოში ჯერ თავისუფალია

ქვემოთ

დატოვა

დატოვა

ჩავდივართ დაღმავალი კიბის ბოლოსკენ, ვხატავთ საჭირო უჯრედებს გზაზე:

nts ჯერ არ არის თავისუფალი მარცხენა მხარეს

გადაღება

უფლება

გადაღება

უფლება

ქვემოთ



პასუხი No13 დავალებაზე

nts მარცხენა ჯერ თავისუფალია

გადაღება

დატოვა

ზევით

nts ჯერ არ არის თავისუფალი მარცხენა მხარეს

გადაღება

ზევით


დავალება No14

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


პასუხი No14 დავალებაზე

მაშინ როცა ის უფასოა მარჯვნივ

უფლება

ხოლო ზედა თავისუფალია

ზევით

გადაღება

nts მარცხენა ჯერ თავისუფალია

დატოვა

გადაღება



პასუხი No15 დავალებაზე

მაშინ როცა ის უფასოა მარჯვნივ

გადაღება

უფლება

ხოლო ქვედა თავისუფალია

გადაღება

ქვემოთ

გადაღება

ჯერ არა (ქვემოდან თავისუფალი)

დატოვა

ქვემოთ

ჯერ არა (მარჯვნივ თავისუფალია)

გადაღება

ქვემოთ

გადაღება

უფლება

ჯერ არა (ზემოდან უფასოა)

გადაღება

უფლება



პასუხი No16 დავალებაზე

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება

ქვემოთ

გადაღება

უფლება

სანამ ზედა არ იქნება თავისუფალი

გადაღება

უფლება

ხოლო ზედა თავისუფალია

ზევით

მაშინ როცა ის უფასოა მარჯვნივ

გადაღება

უფლება

ჯერ არ არის თავისუფალი მარჯვნივ

გადაღება

ქვემოთ



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