Перейти к содержимому


Фотография

Сетевой монитор для геокопателя

вай-фай сеть планшет голопроектор робот копалка графика gui

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 Оффлайн   artem211

artem211
  • Пользователи
  • Сообщений: 188
  • Уровень сигнала: 0%
  • В игре: 0 час. 0 мин.
  • ГородСанкт-Петербург

Награды

              

Отправлено 20 Июль 2015 - 22:58

Итак граждане. Последний стабильный билд геокопалки меня радует, находится сейчас на тестировании, багов пока не обнаружено. Пришло время для нового этапа(с которого по уму следовало бы начинать!) - создание сетевых функций, для вайфы и наверно параллельно для линки тоже.

 

Задача минимум - стабильная передача статов робота по запросу: координаты, основные состояния(топливо, инструмент, процент выполнения текущей задачи).

 

Программа максимум: Автоматизированный сетевой обмен робота со станцией, передача вышеперечисленных величин, возможность "нажать красную кнопку"(остановить робота и вернуть на базу), графическое приложение для планшета(в том числе 2д макет выполняемой задачи, например отрисовка слоя(этажа) руд, в которых оперирует робот, его положение на этой "схемокарте", указание последовательности пути(для анализа)), графическое приложение для рабочей станции(комп с голографическим проектором), функции схожи с планшетной версией, но в 3д, возможность дистанционного управления(указать новое место и запустить нужную программу).

 

На данный момент в сетевых технологиях ОС я довольно таки нуб. Но что успел понять, если робот что то делает(именно робот, аки robot.forward()), то прервать(безопасно) его действие с помощью эвента получения сообщений и не сбить при этом весь алгоритм/функцию(а они у меня многоэтажные) не получится. Нужно действовать апосредованно, не трогая функции использующие пространство имен "robot", тоесть поменять какую то глобальную переменную, проверив которую робот задействует новые алгоритмы. Так ли это? или же существует возможность вмешаться безопасным образом?


  • Asummonster и davial это нравится

#2 Оффлайн   Asummonster

Asummonster
  • Пользователи
  • Сообщений: 570
  • Уровень сигнала: 49,34%
  • В игре: 368 час. 28 мин.
  • ГородКиев

Награды

                    

Отправлено 20 Июль 2015 - 23:04

запускай код в отдельной среде(load(code, _, _, среда))



#3 Оффлайн   artem211

artem211
  • Автор темы
  • Пользователи
  • Сообщений: 188
  • Уровень сигнала: 0%
  • В игре: 0 час. 0 мин.
  • ГородСанкт-Петербург

Награды

              

Отправлено 20 Июль 2015 - 23:05

запускай код в отдельной среде(load(code, _, _, среда))

поясни мысль подробнее



#4 Оффлайн   Asummonster

Asummonster
  • Пользователи
  • Сообщений: 570
  • Уровень сигнала: 49,34%
  • В игре: 368 час. 28 мин.
  • ГородКиев

Награды

                    

Отправлено 20 Июль 2015 - 23:11

тьфу. А чем тебе event.listen не нравится? Он безопасно останавливает(запускает функцию)



#5 Оффлайн   artem211

artem211
  • Автор темы
  • Пользователи
  • Сообщений: 188
  • Уровень сигнала: 0%
  • В игре: 0 час. 0 мин.
  • ГородСанкт-Петербург

Награды

              

Отправлено 20 Июль 2015 - 23:12

тьфу. А чем тебе event.listen не нравится? Он безопасно останавливает(запускает функцию)

Предположи что ты попал евентом в момент, когда робот совершил движение, но не записал изменение координат, а ты евентом заставляешь его сделать другое движение



#6 Оффлайн   Asummonster

Asummonster
  • Пользователи
  • Сообщений: 570
  • Уровень сигнала: 49,34%
  • В игре: 368 час. 28 мин.
  • ГородКиев

Награды

                    

Отправлено 20 Июль 2015 - 23:14

а ты засунь запись координат в саму функцию движения



#7 Оффлайн   artem211

artem211
  • Автор темы
  • Пользователи
  • Сообщений: 188
  • Уровень сигнала: 0%
  • В игре: 0 час. 0 мин.
  • ГородСанкт-Петербург

Награды

              

Отправлено 20 Июль 2015 - 23:16

а ты засунь запись координат в саму функцию движения

не считай себя умнее других. Эта функция с равным успехом прерывается и посередине выполнения


Сообщение отредактировал artem211: 20 Июль 2015 - 23:16


#8 Онлайн   davial

davial
  • Пользователи
  • Сообщений: 440
  • Уровень сигнала: 15,42%
  • В игре: 115 час. 7 мин.
  • ГородТроон в системе Канопуса.

Награды

                    

Отправлено 21 Июль 2015 - 00:48

    В твоём случае, как-раз и надо - "действовать опосредованно". Писать дополнительную функцию "обработчика прерываний"{далее просто Обработчик}, которая периодически должна запускаться и проверять : " А что там Хозяин соизволили молвить ?". 

    Твоя программа, насколько большая, что тебе уже надо - параллелить вычисления. Кусок одного кода обработал, запустил - другой, третий ... и т.д. (Как у Билла Гейтса - с его первой Виндой :giggle: ). И после окончания работы каждого куска кода, должен "вылазить" Обработчик, проверять "желания клиента" и в зависимости от результата - или "уползать обратно в нору", запуская далее основной поток или же прерывать выполнение программы и "исполнять пожелание" аки Джин. :D

   По-сути, это уже будет - маленький Диспечер задач.


Сообщение отредактировал davial: 21 Июль 2015 - 00:57


#9 Оффлайн   artem211

artem211
  • Автор темы
  • Пользователи
  • Сообщений: 188
  • Уровень сигнала: 0%
  • В игре: 0 час. 0 мин.
  • ГородСанкт-Петербург

Награды

              

Отправлено 21 Июль 2015 - 07:07

    В твоём случае, как-раз и надо - "действовать опосредованно". Писать дополнительную функцию "обработчика прерываний"{далее просто Обработчик}, которая периодически должна запускаться и проверять : " А что там Хозяин соизволили молвить ?". 

    Твоя программа, насколько большая, что тебе уже надо - параллелить вычисления. Кусок одного кода обработал, запустил - другой, третий ... и т.д. (Как у Билла Гейтса - с его первой Виндой :giggle: ). И после окончания работы каждого куска кода, должен "вылазить" Обработчик, проверять "желания клиента" и в зависимости от результата - или "уползать обратно в нору", запуская далее основной поток или же прерывать выполнение программы и "исполнять пожелание" аки Джин. :D

   По-сути, это уже будет - маленький Диспечер задач.

Спс, так и думал. Ну чтож, будем писать







Темы с аналогичным тегами вай-фай, сеть, планшет, голопроектор, робот, копалка, графика, gui

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных