Команда в массиве
- Войдите на сайт для отправки комментариев
Всем привет. Работаю над проектом автономного склада. Столкнулся с вопросом оптимизации кода. Давайте я расскажу про проект для большей наглядности (код пока только на бумаге). У нас есть склад, который разбит по цветам. Каждый цвет - это определённый предмет, но для большей вместимости однотипных предметов, у каждого цвета несколько ячеек хранения. Так же у нас есть терминал (контроллер arduino uno r3 с которым мы общаемся через serial) и робот с манипулятором. Робот и терминал обмениваются информацией через wifi модуль. Принцип работы следующий. На терминале склад представлен массивом (столбцы - цвет, строки - ячейка). в зависимости от заполнении цветов и ячеек, в него записывается 0 или 1. и когда нам нужно взять или положить на склад, (в каждом цвете три ячейки), у нас появляется семь вариантов того, как склад может быть заполнен. В зависимости от этого, манипулятор должен выполнять определённое действие(для всех цыетовых зон они одинаковые). Идея пришла к тому, чтобы сразу расписать все варианты действия для манипулятора. Терминал будет проводить расчет и отправлять номер действие роботу. и в зависимости от той цифры, которую мы передали роботу, должно будет в определённой зоне выполнится это действие. если делать поиск действия через if, то код будет слишком объёмным. Теперь после того как я объяснил примерно принцип, сам вопрос. можно ли код для ардуино записывать в массив и в зависимости от номера действия обращаться к определённому массиву (в действии для манипулятора будут только команды servo для 5-ти микросервоприводов).
Вам в песочницу. Переключение режимов работ реализовать можно. Прошивки в массив - бредовая идея, это как суп сапогом есть. Если извратиться то вроде можно, но глупо.
Как мне представляется - реально работающее решение будет зависеть от множества факторов.
Например - статичности конфигурации "склада". Если конфигурация изменится, будет необходимо синхронизировать схемы действий во всех устройствах.
Возможно вылезет изнашиваемость деталей, обусловленная одним частым действием - траекторией движения манипулятора к ячейке и будет неплохо вводить иные траектории, зависящие от частоты производимых действий. Получится ли такое решение принимать на стороне исполнительного механизма, если он будет махать рукой по "матрице"...
можно ли код для ардуино записывать в массив и в зависимости от номера действия обращаться к определённому массиву
формулировка бредовая, но по сути то что вы хотите - реализуется оператором switch() case
strelok12371, Ваш текст состоит из двух частей: описания и вопроса. К сожалению, внятно сформулировать ни того, ни другого, Вы не смогли. У меня, когда я читал, конечно, возникло определенное впечатление, но, прочтя три предыдущие ответа на Ваше сообщение, я заметил, что каждый из четырех отвечающих понял тему по-своему. Т.е. по-разному.
Попытайтесь расписать чуть поподробнее, и не забудьте снабдить текст иллюстрациями.
Что же касается вопроса, то, боюсь, Вы пользуетесь весьма странной терминологией. Что, например, значит "код для ардуино записывать в массив"? Это как? В программировании принято различать программу, данные и адреса. В массив можно записывать только данные или адреса. Код и массив - вещи взаимоисключающие. Но при определенных условиях алгоритм действий (не код) можно хранить и в массиве.
Попытайтесь сформулировать вопрос в терминах задачи, а не в терминах реализации.
вирусные технологии добрались до ардуино?
можно ли код для ардуино записывать в массив и в зависимости от номера действия обращаться к определённому массиву
Можно.