Tinkerforge
Tinkerforge — это платформа открытого аппаратного обеспечения, состоящая из наращиваемых микроконтроллерных блоков (англ. Bricks), которые могут управлять различными модулями (англ. Bricklets) для создания встраиваемых систем и прототипов.
Основной интерфейс связи строительных блоков может быть расширен с помощью Master Extensions.
Аппаратным обеспечением можно управлять с помощью внешних программ, написанных на C, C++, C#, Object Pascal, Java, Perl, PHP, Python, Ruby, Shell и VB.NET через USB-соединение, Wi-Fi или Ethernet и работающих в Windows, Linux и macOS.
Этот подход не-встроенного программирования устраняет типичные требования и ограничения (инструменты разработки, ограниченная доступность оперативной памяти и вычислительной мощности) традиционной разработки встроенного программного обеспечения (например, Arduino). Аппаратное и программное обеспечение Tinkerforge имеют открытый исходный код, и все файлы размещены на GitHub.
Компьютерный журнал Chip присудил Tinkerforge в 2012 награду «Продукт года»[1][2].
Общие сведения
| Tinkerforge | |
|---|---|
| Тип | Бизнес и микроконтроллер |
| Первый выпуск | 2011 |
| Сайт | tinkerforge.com |
Основные компоненты
Модульная система состоит из трёх основных компонентов[3][4]:
Микроконтроллерные блоки Bricks
Bricks — являются основными блоками — представляют собой печатные платы размером 4 × 4 см. Они могут выполнять измерения, управлять двигателями и взаимодействовать с другими строительными блоками.
Каждый блок Brick оснащён 32-битным микроконтроллером ARM, USB-разъёмом и слотами для подключения дополнительных блоков Bricks и модулей Bricklets.
Возможно укладывать несколько блоков Bricks друг на друга. Нижний блок Brick в таких стеках должен быть основным (Master Brick).
Модули Bricklets
Модули Bricklets расширяют возможности блоков Bricks. Они предоставляют средства для ввода и вывода данных. Многие модули Bricklets являются датчиками/сенсорами, но есть также LCD-Bricklets и Bricklets для цифрового и аналогового ввода и вывода.
Плата Master Extensions
Master Extensions — модули, расширяющие возможности Master Brick (основного блока) за счёт новых интерфейсов связи. Как и блоки Bricks, Master Extensions представляют собой печатные платы размером 4 × 4 см. Существуют расширения для Wi-Fi , Ethernet и RS-485. С точки зрения программирования различные интерфейсы прозрачны.
Стек с Master Extension работает так, как если бы каждая плата в стеке была напрямую подключена к ПК через USB-соединение, при этом управление блоками Bricks и модулями Bricklets происходит не через USB, а через Ethernet, RS‑485 или Wi‑Fi.
Применение
Платформа применяется для:
- прототипирования встраиваемых систем;
- образовательных проектов и лабораторных работ;
- автоматизации небольших установок и IoT‑устройств;
- экспериментальных проектов с датчиками и управляющими элементами.
Достоинства платформы
- Возможность механического соединения модулей Bricklets и блоков Bricks друг с другом в вертикальные «стопки».
- Прозрачность интерфейсов: с точки зрения программирования все способы связи (USB, Wi‑Fi, Ethernet) выглядят одинаково — код не нужно переписывать при смене интерфейса.
- Поддержка множества языков: управление модулями Bricklets возможно из программ на C, C++, C#, Object Pascal, Java, Perl, PHP, Python, Ruby, Shell и VB.NET.
- Кроссплатформенность: работа под Windows, Linux и macOS.
- Открытость: все аппаратные схемы, прошивки и библиотеки опубликованы как open source на GitHub[5].
- Упрощение разработки: высокая степень абстракции скрывает низкоуровневые детали работы с аппаратным обеспечением.
- Быстрый старт: не требуется настраивать инструменты разработки и бороться с ограничениями памяти/производительности, как в классических встраиваемых системах (например, Arduino).
- Гибкость: можно комбинировать разные модули Bricklets и платы Master Extensions под конкретную задачу.
- Доступность: система позиционируется как недорогая и простая в освоении[6][7].
Tinkerforge GmbH
Компания Tinkerforge GmbH была основана в Германии в 2011 году для упрощения работы со встраиваемыми системами. Изначально было разработано нескольких модулей, но количество доступных модулей увеличено до более чем 70 (по состоянию на 2025 год), и планируется дальнейшее развитие.