Завдання І етапу Всеукраїнського турніру юних інформатиків 2013 : Волинська обласна Мала академія наук
: : Завдання І етапу Всеукраїнського турніру юних інформатиків 2013
|
Планета Земля, колиска людства, вже досить переповнена. Все частіше про колонізацію інших космічних тіл люди говорять не як про теоретичну, а про практичну можливість. Але умови цих космічних тіл зовсім не пристосовані для людини. Тому першопрохідцями, тими, хто все підготує до приходу людей будуть роботи.
Сьогодні роботи займають все більше місце у нашому житті. Спочатку дослідницькі, потім промислові, військові і, нарешті, побутові. Роботи-іграшки, роботи-друзі, роботи-пилососи – все це ми можемо побачити на полицях магазинів. Розвиток всіх цих видів роботів відбувається паралельно. Вони працюють за однаковими принципами і взагалі між ними немає жодної різниці. Чи ні?
Відчуйте себе розробником роботехнічної системи. Виробництво роботів є досить коштовним, тому більшість попередніх досліджень варто здійснювати на моделях. Пропонується створити комп’ютерну модель робота згідно представлених завдань.
Завдання турніру носить дослідницький та творчий характер і тому є відкритим. Команди-учасниці деталізують завдання, виходячи зі своєї концепції розв’язання. Цю концепцію вони повинні викласти у вигляді технічного завдання та надати журі разом з іншою технічною документацією у файлі tech_zavd.docx (doc).
Кожне наступне завдання є ускладненням попереднього. Але команди-учасниці можуть комбінувати вимоги різних завдань у своєму програмному продукті. Всі математичні моделі, створені у рамках проекту, повинні бути описані та збережені у файлі mat_mod.docx (doc).
Завдання 1.
- Розробити програму — виконавець алгоритмів. Під виконавцем ми розуміємо комп’ютерну модель робота.
- Програма повинна містити редактор алгоритму, яка підтримує систему команд для керування виконавцем, що рухається площиною. Систему команд учасники розробляють самостійно, виходячи з функціональної повноти та ефективності.
- Реалізувати в програмі двовимірну візуалізацію виконання алгоритму, заданого користувачем.
- Забезпечити збереження алгоритму в файлі.
- Забезпечити зчитування алгоритму з файлу.
- Надати користувачеві засоби налагодження алгоритму.
Завдання 2.
-
- Побудувати модель руху робота в тривимірному просторі поверхнею довільного рельєфу. За необхідністю розширити систему команд.
- Забезпечити завантаження рельєфу поверхні з файлу зображення в сірих тонах в форматі BMP. Висота поверхні визначається яскравістю пікселя. Користувачеві надати можливість керувати масштабом відображення горизонтальних та вертикального вимірів поверхні.
- Забезпечити тривимірну візуалізацію моделі руху робота заданою поверхнею за побудованим користувачем алгоритмом.
- Надати можливість зміни ракурсу, наближення та віддалення камери.
Завдання 3.
-
- Додати в модель можливість модульної побудови робота. Приклади модулів: шасі, сенсор дотику, сенсор відстані, сенсор орієнтації у просторі, акселерометр, сервомотор, маніпулятор та інші. Модель повинна враховувати взаємне положення модулів, їх орієнтацію у просторі.
- Розробити програму — виконавець алгоритмів для модульного робота. Визначити відповідну систему команд.
- Розробити формат файлу для збереження даних про робота. Забезпечити запис та зчитування цих даних.
- Програма повинна містити редактор алгоритму, що підтримує систему команд для керування моделлю робота, що рухається поверхнею довільного рельєфу та може взаємодіяти з різними об’єктами. Система команд повинна містити можливість опитування датчиків, керування сервомоторами, іншими приладами.
- Врахувати можливість виходу з ладу модулів робота та його часткове руйнування.
Завдання 4.
-
- Додати у модель можливість роботи робота в умовах різних планет. Змоделювати систему живлення робота.
- Змоделювати систему керування роботом з Землі або орбітальної станції.
- Врахувати характеристики поверхні, якою рухається робот: вологість, слизькість, осипання ґрунту, буксування.
- Врахувати вплив навколишнього середовища: умови освітлення, атмосферні явища, стихійні лиха тощо.
Завдання 5. Автономний робот
-
- Запрограмувати робота на виконання завдань пунктів 5.2. - 5.4. для довільного рельєфу.
- Починаючи з точки з координатами (x0,y0) переміститися в точку (x1,y1).
- Починаючи з точки з координатами (x0,y0) забрати в точці (x1,y1) об'єкт та доставити його в точку (x2,y2). Об’єкт має форму прямокутного паралелепіпеда та має характеристики: розміри rx, ry, rz; одиничний вектор напрямку OY локальної системи координат об’єкта в системі світових координат (nx,ny,nz).
- Починаючи з точки з координатами (x0,y0) відшукати об’єкт та перемістити його в точку (x1,y1).
- Забезпечити функціонування робота у заданий період часу N (днів, годин, хвилин, секунд) в умовах агресивного середовища.
|
|