(C)http://legoms.ru/
В программе LEGO MINDSTORMS предусмотрена передача и прием данных от одного блока другому. Это необходимо, когда надо обрабатывать данные получаемые от датчиков, производить математические и/или логические операции, при выводе информации на дисплей (экран) контроллера. В этой статье мы рассмотрим основные ошибки при передаче данных (параметров) от блока к блоку.
Каждый вход или выход блока может работать только с определенным типом данных. В программе используется три типа данных:
Пример: Предположим, что вы хотели бы вывести на экране NXT цифровое значение.
В данном примере допущена ошибка "несоответствие типов данных", так как мы пытаемся передать числовой тип данных на вход, который может обработать только строковые данные. Для того, чтобы это сделать, надо перевести числовое значение в строковое. На данном рисунке показано как правильно вывести значение на экран NXT.
2. Создание линиями передачи данных циклов
Иногда требуется получить данные от блока, обработать их
и передать назад к исходному блоку.
Пример: Предположим, что нужно создать программу, которая считывает данные с двигателя, производит над ними операцию и возвращает их обратно.
На данном рисунке показана программа с ошибкой.
Ниже приведен пример, как правильно это сделать. чтобы не создавать цикл.
3. Отсутствие входных данных
Многие блоки не могут нормально функционировать без входных данных.
Пример: Предположим, что вы хотите передать данные через несколько блоков.
Логические, математические, модули сравнения, нахождение диапазона преобразования типа данных и другие блоки обработки данных требуют наличие входных данных. В программе представленной ниже, видно что с датчика звука не поступают данные на блок математических операций. Эта программа содержит ошибку и не может быть загружена в контроллер NXT.
На следующем рисунке представлена исправленая программа. Данные из датчика звука теперь могут быть переданы через блок математических операций к блоку преобразования типов (числа в текст).
4. Объедение нескольких выходов на один вход
Недопустимо подключать несколько выходов на один вход.
На следующем рисунке показана ошибка с объединением двух выходов на один вход. Для исправления данной ошибки необходимо удалить ошибочные цепи.
На этом рисунке представлена исправленная программа.
Удаление линии передачи данных от блока к блоку.
Чтобы удалить линию передачи данных от выхода до входа, необходимо щелкнуть по входному порту, куда подключена линия.
В программе LEGO MINDSTORMS предусмотрена передача и прием данных от одного блока другому. Это необходимо, когда надо обрабатывать данные получаемые от датчиков, производить математические и/или логические операции, при выводе информации на дисплей (экран) контроллера. В этой статье мы рассмотрим основные ошибки при передаче данных (параметров) от блока к блоку.
Четыре самые распространенные из возможных ошибок при подключении блоков:
1. Несоответствие типа передаваемых данных Каждый вход или выход блока может работать только с определенным типом данных. В программе используется три типа данных:
Пример: Предположим, что вы хотели бы вывести на экране NXT цифровое значение.
В данном примере допущена ошибка "несоответствие типов данных", так как мы пытаемся передать числовой тип данных на вход, который может обработать только строковые данные. Для того, чтобы это сделать, надо перевести числовое значение в строковое. На данном рисунке показано как правильно вывести значение на экран NXT.
2. Создание линиями передачи данных циклов
Иногда требуется получить данные от блока, обработать их
и передать назад к исходному блоку.
Пример: Предположим, что нужно создать программу, которая считывает данные с двигателя, производит над ними операцию и возвращает их обратно.
На данном рисунке показана программа с ошибкой.
Ниже приведен пример, как правильно это сделать. чтобы не создавать цикл.
3. Отсутствие входных данных
Многие блоки не могут нормально функционировать без входных данных.
Пример: Предположим, что вы хотите передать данные через несколько блоков.
Логические, математические, модули сравнения, нахождение диапазона преобразования типа данных и другие блоки обработки данных требуют наличие входных данных. В программе представленной ниже, видно что с датчика звука не поступают данные на блок математических операций. Эта программа содержит ошибку и не может быть загружена в контроллер NXT.
На следующем рисунке представлена исправленая программа. Данные из датчика звука теперь могут быть переданы через блок математических операций к блоку преобразования типов (числа в текст).
4. Объедение нескольких выходов на один вход
Недопустимо подключать несколько выходов на один вход.
На следующем рисунке показана ошибка с объединением двух выходов на один вход. Для исправления данной ошибки необходимо удалить ошибочные цепи.
На этом рисунке представлена исправленная программа.
Удаление линии передачи данных от блока к блоку.
Чтобы удалить линию передачи данных от выхода до входа, необходимо щелкнуть по входному порту, куда подключена линия.
Комментариев нет:
Отправить комментарий