Рубрика «Промышленное программирование» - 30

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

Простой расчет контрольной суммы - 1

Чтобы упростить алгоритм, без потери качества, нужно немного «битовой магии», что интересная тема сама по себе.
Читать полностью »

За последние три дня вышло несколько новостей про российский процессор Байкал-Т:

1. Российская компания «Т-Платформы» представила процессорный модуль SF-BT1 с Байкалом-Т, который она собирается распостранять среди разработчиков.

2. Также «Т-Платформы» выпустили на основе Байкала-Т тонкий клиент «Таволга терминал», который может работать не только как терминал, но и как автономной компьютер с Linux Debian 8.

3. Т-Платформы показывали и плату для разрабочиков, и терминал на основе Байкала-Т на выставке Embedded World в Нюренберге, в сотрудничестве с британской компанией Imagination Technologies, которая разработала микропроцессорное ядро MIPS P5600, которое использует Байкал-Т.

Я не буду пересказывать все статьи про Байкал-Т, Т-Платформы и Таволгу. Те разрабочики, кто этим интересуется, могут сами сходить по ссылкам и посмотреть параметры плат. Я добавлю некоего информационного гарнира про процессор, его экосистему и историю.

На фотографии ниже — ранние пользователи байкаловских плат. Это инженеры из России, Украины и Казахстана, которые участвуют в разработке микропроцессорного ядра MIPS P5600 и его сотфтверной экосистеме в отделении Imagination Technologies в Санта-Клара, Калифорния: Леонид Егошин (поддержка многоядерности в ядре Линукса), Сергей Вакуленко (симулятор для верификации) и Юрий Панчул (модели интерфейсов шин):

Платы для разработчиков и терминал на основе российского микропроцессора Байкал-Т - 1

Вообще Байкал-Т — это плод международного сотрудничества, в которон вовлечены в частности:
Читать полностью »

Сегодня в питерском офисе Яндекса пройдет встреча со специалистами по параллельному программированию. К нам придут Жоэль Фальку из французской Лаборатории исследований в области информатики, Гор Нишанов из Microsoft и Кирк Шуп, который работает над Microsoft Azure. Специально для читателей Хабра мы попросили Гора Нишанова и Кирка Шупа рассказать об их личном опыте, отношении к C++, проблемах и развитии языка.

Что происходит в C++. Интервью с докладчиками и прямая трансляция встречи в Яндексе - 1

Для тех, кому тема интересна, в 19:00 мы начнем видеотрансляцию с мероприятия. Встреча пройдет на английском языке. Прямо на странице трансляции можно будет задавать свои вопросы гостям. Для тех, кто не успеет посмотреть прямой эфир, мы выложим запись.
Читать полностью »

Энергетика является сама по себе критической инфраструктурой с одной стороны, а с другой стороны любая другая инфраструктура имеющая статус критической в той или иной мере, сегодня, зависит от нее напрямую. Чтобы остановить поезд, необязательно разбирать пути или взрывать мосты, достаточно обесточить несколько тяговых подстанций или даже не напрягаться так сильно, а просто повлиять на ряд параметров качества электроэнергии. Причём последний вариант ещё и очень сложно будет диагностировать теми средствами, которые транспортники используют сегодня.
С приходом рыночных отношений, в Энергетику пришли новые технологии. Крайне консервативная отрасль, последние 10 лет находится в стадии серьёзных преобразований. В эксплуатации находятся современные подстанции, построенные на микропроцессорных защитах последнего поколения (по западным стандартам) и подстанции, использующие силовые трансформаторы выпуска 30-х годов прошлого века, вывезенные из оккупированной Германии в 1945 году с релейной защитой 60-х годов. По разным оценкам, от 60 до 80 процентов оборудования нуждается в замене или модернизации. Давайте представим себе ситуацию, что такая модернизация осуществилась, все настроено, работает, диспетчера максимально используют вновь открывшееся возможности, автоматика обеспечивает снижение эксплуатационных затрат, резко уменьшается количество отключений. Это одна сторона медали, при этом новое оборудование требует квалифицированного обслуживания, обеспечивает наблюдаемость через публичные сети, работают с использованием международных стандартов. Мы фактически окажемся (в ряде случаев, уже оказались) полностью открытыми и незащищенными в терминах информационной безопасности. Во всем мире активно формируется целая отрасль «Информационная безопасность критических инфраструктур». Пишутся статьи, проходят конференции, выпускаются обучающие симуляторы, рынок наводняют сериями продуктов, которые позиционируют себя в этой отрасли. Попробуем проанализировать эту ситуацию с разных точек зрения и выстроить собственную стратегию безопасности.
Читать полностью »

В данной статье рассмотрена интеграция программируемого логического контроллера CPM713 компании Fastwel, работающего на базе протокола MODBUS TCP, с панелью оператора Weintek, поддерживающей последовательный вариант протокола MODBUS RTU/ASCII, с помощью интерфейсного модуля NIM742 и готовой библиотеки адаптированной среды CoDeSys для Fastwel.

Промышленные протоколы на базе сетей Ethernet приобретают все большую популярность. Использование данной технологии в промышленных системах имеет преимущества, например, возможность гибкой модернизации и масштабирования системы, простоту построения архитектуры и невысокую стоимость создания сетей [1]. Однако внедрение новых технологий в область АСУ ТП происходит достаточно медленно, поэтому до сих пор многими устройствами используются традиционные промышленные сети на базе последовательных шин.

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

Так, контроллер CPM713 компании Fastwel использует для передачи данных протокол MODBUS TCP на базе сетей Ethernet [2]. При работе с данным контроллером возникла задача передавать и получать данные с панели оператора MT6100i компании Weintek, поддерживающей последовательный протокол MODBUS RTU/ASCII (рис. 1).

Реализация MODBUS RTU сервера с помощью интерфейсного модуля Fastwel и программного обеспечения CoDeSys - 1
Рисунок 1. Интеграция контроллера Fastwel I/O с операторской панелью Weintek

Использование бесшовной интеграции всегда является более приоритетным, чем использование сторонних шлюзов. Поэтому для решения данной задачи был взят интерфейсный модуль NIM742 компании Fastwel, позволяющий подключать устройства с интерфейсом RS-232C и работать с ними через пользовательскую программу контроллера CPM713.

Модуль NIM742 совместно с пользовательской программой контроллера CPM713 реализует работу подчиненного узла Modbus RTU. NIM742 подключается в общую линейку модулей и по шине FBUS обменивается данными с контроллером CPM713 (рис.2). Для обеспечения работы NIM742 с протоколом MODBUS RTU используется библиотека CoDeSys FastwelModbusServer.lib, входящая в пакет адаптации Fastwel.

Реализация MODBUS RTU сервера с помощью интерфейсного модуля Fastwel и программного обеспечения CoDeSys - 2
Рисунок 2. Контроллер CPM713 с подключенными модулями
Читать полностью »

В первой части серии мы приступили к разработке системы с сервоприводом, по крайней мере, мысленно. Я показал модель системы, на которой прекрасно видны все элементы и связи между ними.

image

Так как же соединяются части нашей системы? Благодаря протоколу FlexRay с электронным блоком управления (ECU) руль связан с датчиком положения. В отличие от обычного датчика, который регулирует напряжение в зависимости от температуры, умный датчик прекрасно взаимодействует напрямую с FlexRay.

В современных автомобилях, как правило, применяют два вида сетевых технологий: CAN и FlexRay. FlexRay — преемник CAN. Главное преимущество FlexRay в том, что можно точно определить момент передачи определенного сигнала, то есть протокол детерминирован. С помощью данной сети отдельные системы автомобиля, будь то тормозная, рулевая или другие блоки умных датчиков, непрерывно обмениваются необходимой информацией, что гарантирует бесперебойную работу авто.
Читать полностью »

Как это — быть разработчиком ПО для автомобилей. Часть 1-2 - 1

Сталкиваясь с реалиями машиностроительной промышленности, большинство разработчиков программного обеспечения не справляются – уж очень узкоспециализированы продукты, с которыми приходится работать. Это вам не создание программ для интернет-пользователей, компьютеров и даже не мобильные приложения, а потому новички чувствуют себя, как Томас из фильма «Бегущий в лабиринте». Посмотрите, примерно, 50 секунд трейлера – и вы поймете, какой шок испытывают те, кто имеет дело с разработкой ПО для автомобилей впервые.

Все, что у вас есть — это множество терминов и инструментов, о которых вы понятия не имеете. Когда во время собеседования в одной автомобильной компании я поинтересовался, какую IDE они используют, интервьюеру мой вопрос, мягко говоря, не понравился. Я привык к Visual Studio, и наивно надеялся, что здесь для разработки встроенного программного обеспечения понадобится что-то аналогичное. Я даже не представлял, что меня ожидало! Просто море мелких и серьезных (по сложности) инструментов, которым нужна была очередная жертва.
Читать полностью »

Позвольте небольшое предисловие — обозначу в нём цель статьи.
Я по субботам студентам младших курсов преподаю введение в шаблоны проектирования. Вот, хочу поделиться опытом, описать план нескольких первых лекций. Большинству читателей, я полагаю, сам излагаемый мной материал давно знаком, но, возможно, порядок и способ изложения покажутся любопытными.
Слишком часто, увы, нам рассказывают что-то, но не говорят, зачем это нужно, или говорят даже, но будто вскользь. Скажем, обыкновенно, говоря о C#, расскажут, что такое базовый класс и интерфейс, каким синтаксисом нужно пользоваться, чтобы написать их, приведут пример, где базовым будет класс «Птица», а наследниками «Утка» и «Орёл», но зачем всё это нужно, какая от всей — потенциально сложной — иерархии классов достигается польза, не говорят: это будто бы в тени, подразумевается само собою. И вот потому у многих учеников, ещё не успевших набить свои шишки, в голове перевёрнутая картина мира — они неплохо представляют, что за инструменты даны им в руки, но зачем они изобретены и к чему применимы, понимают смутно.
Вот поэтому я сочинил несколько учебных примеров, на которых можно показать зачем нужны некоторые подходы. Правда, придётся принять условность — будем бить из пушки по воробьям, а то и по воображаемым мишеням. Зато пристреляемся и уж во вражеский бруствер точно попадём, случись что.
Сразу скажу, что от вопросов совсем простых мы быстро перейдем к довольно сложным (ну, скажем, к компоновщику), потому читайте до конца, если уж не с начала.
Читать полностью »

Один из ведущих специалистов в области информационной безопасности, основатель, руководитель антивирусных исследований и генеральный директор «Лаборатории Касперского» рассказал студентам Университета Иннополис о современном мире компьютерных систем и защите данных во всемирной паутине. Много шуток, историй из реальной практики и, конечно, киберпреступлений.
Мы записали эту лекцию, чтобы поделиться с вами.
Читать полностью »

Switch Converter заслуживает особенного внимания. Простой и удобный он обладает поразительной универсальностью. На его основе легко построить множество распространённых типов конвертеров без декларирования новых классов и не только… Не верится — добро пожаловать!
imageЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js