BiSS и SPI: Сравнение протоколов связи для энкодеров

BiSS и SPI — это два распространенных последовательных протокола связи, используемых в промышленности, особенно в энкодерах двигателей и датчиках. Хотя внешне они могут быть похожи, между ними существуют ключевые различия в целях проектирования, принципах работы и характеристиках.

Если кратко:

  • SPI — это универсальная, простая и широко используемая промышленная стандартная шина связи.
  • BiSS — это открытый протокол, специально разработанный для датчиков реального времени (таких как абсолютные энкодеры), целью которого является обеспечение высоконадежного, высокоскоростного и высокоточного обмена данными.

Ниже мы подробно сравним их по нескольким параметрам.

Сравнение в общем

ХарактеристикаПротокол BiSSПротокол SPI
Природа протоколаОткрытый, точка-точка, ведомый/ведущийДе-факто стандарт, универсальный, ведомый/ведущий
Цель проектированияСпециально разработан для передачи данных датчиков в реальном времени с высокими требованиями к безопасности (напр., энкодеры)Универсальная связь на уровне платы, на короткие расстояния
Режим тактовой частотыОднонаправленная непрерывная тактовая частота (MASTER→SLAVE). Тактовый сигнал активен только во время передачи данных.Двунаправленная тактовая частота. Ведущий генератор тактового сигнала, но ведомый может выводить данные по фронту тактового сигнала.
Структура кадра данныхСтрого определенная структура кадра, включая стартовый бит, биты данных, биты CRC, биты состояния и т.д.Фиксированная структура кадра отсутствует. Формат и длина данных полностью определяются программным обеспечением ведущего и ведомого устройств.
Обнаружение ошибокОбязательная CRC (циклическая проверка избыточности), обеспечивает мощное обнаружение ошибок, что критично для безопасных применений.Обычно отсутствует аппаратное обнаружение ошибок. Надежность зависит от более высокого качества сигнала или программной проверки.
Обратная связь ведомогоВыделенная однонаправленная линия обратной связи (SLO→MAS), полностью отделена от тактовой линии.Двунаправленная линия данных (MISO), ведущий и ведомый используют общую тактовую линию.
Реальное времяДетерминированная задержка. Задержка между получением тактового сигнала от ведущего и отправкой данных является фиксированной и предсказуемой.Задержка недетерминирована, зависит от внутренней логической обработки ведомым устройством.
Область примененияВысокопроизводительные абсолютные энкодеры, линейные датчики, сервоприводы и другие сценарии с высокими требованиями к надежности и реальному времени.Флэш-память, ЦАП/АЦП, датчики, сенсорные экраны и другие универсальные периферийные устройства.

Подробный анализ различий

1. Физический уровень и способ подключения

  • SPI: Использует 4 провода:
    • SCLK (Serial Clock): Тактовый сигнал, генерируемый ведущим устройством.
    • MOSI (Master Out Slave In): Линия данных для передачи от ведущего к ведомому.
    • MISO (Master In Slave Out): Линия данных для передачи от ведомого к ведущему.
    • CS (Chip Select): Сигнал выбора кристалла, который ведущий использует для выбора конкретного ведомого устройства.
  • BiSS: Также использует 4 провода, но названия и значения略有 отличаются:
    • MA (Master Clock): Эквивалентен SCLK в SPI, тактовый сигнал от ведущего.
    • SLO (Slave Out): Эквивалентен MISO в SPI, линия вывода данных ведомого.
    • SLI (Slave In): Используется в некоторых режимах BiSS (например, доступ к регистрам), эквивалентен MOSI в SPI.
    • nCS (Chip Select): Сигнал выбора кристалла, функционально аналогичен CS в SPI.

Примечание: В простейшем режиме BiSS C без адреса (часто используется в энкодерах) линия SLI не нужна, требуются только провода MA, SLO и nCS. Это основа физической совместимости с SPI.

2. Механизм передачи данных (ключевое отличие)

Это самое фундаментальное различие, определяющее области их применения.

  • Процесс связи SPI:
    1. Ведущий переводит сигнал CS соответствующего ведомого устройства в низкий уровень.
    2. Ведущий начинает генерировать тактовый сигнал SCLK.
    3. Ведущий одновременно передает данные (обычно команды или адрес) ведомому устройству по линии MOSI.
    4. Ведомое устройство одновременно возвращает данные ведущему по линии MISO.
    5. Связь завершается, ведущий переводит сигнал CS в высокий уровень.
      Особенности: Полный дуплекс, одновременная передача и прием. Содержание, длина и значение данных полностью определяются производителем устройства.
  • Процесс связи BiSS:
    1. Ведущий переводит сигнал nCS в низкий уровень, что отмечает начало кадра связи.
    2. Ведущий генерирует фиксированное количество тактовых импульсов MA (например, 64 импульса для 64-битного кадра).
    3. В первые несколько тактовых циклов ведомое устройство (энкодер) отправляет фиксированный «стартовый бит» и «биты состояния датчика» по линии SLO.
    4. В последующих тактовых циклах ведомое устройство отправляет основные данные о положении.
    5. В конце кадра ведомое устройство отправляет код CRC.
    6. После получения всего кадра ведущий вычисляет CRC и сравнивает его с полученным для проверки правильности данных.
    7. Ведущий переводит сигнал nCS в высокий уровень, кадр завершается.
      Особенности: Полудуплекс, имеет строгую, предопределенную структуру кадра. Ведущий отправляет тактовый сигнал для «чтения» данных, сам не отправляя команд по линии данных (в режиме без адреса). Весь процесс является детерминированным.

3. Обнаружение ошибок и надежность

  • BiSS: Встроенная проверка CRC является обязательной частью протокола. Это обеспечивает очень высокую надежность передачи данных в сложных промышленных электромагнитных условиях (например, рядом с частотными преобразователями, двигателями). Если проверка CRC не проходит, ведущий может немедленно отбросить эти данные, что является требованием функциональной безопасности.
  • SPI: Сам протокол не содержит механизмов обнаружения ошибок. Если приложение требует этого, это должно быть реализовано дополнительно на программном уровне (например, добавление контрольной суммы в передаваемые данные), но это увеличивает нагрузку и не является стандартным.

Итоги и рекомендации по выбору

СценарийРекомендуемый протоколОбоснование
Подключение Flash-памяти, АЦП, обычных датчиковSPIПростота, универсальность, поддержка многими производителями, богатые ресурсы для разработчиков.
Высокопроизводительные абсолютные энкодеры в серводвигателяхBiSSВысокая надежность, детерминированная задержка, встроенная проверка CRC, оптимизирован для управления в реальном времени.
Система требует сертификации функциональной безопасности (напр., SIL/ISO13849)BiSSВстроенные механизмы безопасности (CRC) облегчают соответствие требованиям сертификации.
Замена или совместимость с традиционными инкрементальными энкодерами (A/B/Z)BiSSИнтерфейс BiSS может напрямую выводить аналоговые сигналы A/B/Z, что упрощает модернизацию системы.
Аппаратная конфигурация фиксирована, требуется простое чтение данныхОбаМногие энкодеры BiSS имеют «режим совместимости с SPI», что позволяет читать их через контроллер SPI, но теряются преимущества CRC и детерминированности BiSS.

Важное замечание: Поскольку BiSS физически совместим с SPI, многие энкодеры BiSS можно перевести в «режим SPI» для чтения с помощью стандартного интерфейса SPI. Однако это всего лишь режим совместимости. В этом режиме используется механизм связи SPI, и вы не получаете преимуществ встроенной проверки CRC и строгой временной синхронизации native-протокола BiSS. В настоящих applications с высокими требованиями к безопасности следует использовать настоящий ведущий контроллер BiSS.


Решения от OTV: Энкодеры с поддержкой протоколов BiSS и SPI

Компания OTV предлагает широкий спектр высококачественных энкодеров, совместимых с обоими протоколами, чтобы удовлетворить различные потребности наших клиентов в промышленной автоматизации.

Характеристика / ПотребностьРешение OTV на базе BiSSРешение OTV на базе SPI
Высокая надежность и функциональная безопасность✅ Встроенная аппаратная проверка CRC, отказоустойчивость⚠️ Требует программной реализации проверки ошибок
Детерминированная работа в реальном времени✅ Фиксированная и предсказуемая задержка передачи данных❌ Задержка зависит от реализации ведомого устройства
Совместимость с существующими системами на SPI✅ Доступны модели с режимом совместимости с SPI (для простой интеграции)✅ Нативный протокол SPI
Простота интеграции и разработки⚠️ Требует понимания специфики BiSS✅ Широко известный стандарт, простота использования
Применения: Высокоскоростные сервоприводы, критичные к безопасностиИдеально подходит благодаря встроенным механизмам безопасности и детерминизму❌ Не рекомендуется для применений с высокими требованиями к безопасности
Применения: Стандартная автоматизация, датчики, HMI✅ Отлично подходитОтлично подходит благодаря простоте и универсальности
Совместимость с инкрементальными энкодерами (A/B/Z)✅ Наличие специальных выходов❌ Обычно отсутствует в нативных решениях SPI

OTV поможет вам выбрать оптимальное решение для вашей конкретной задачи, будь то высокоскоростной сервопривод с требованиями функциональной безопасности или стандартная система автоматизации. Наши инженеры готовы предоставить техническую консультацию и образцы для тестирования.

Leave a Comment

Your email address will not be published. Required fields are marked *

Shopping Cart