Что такое язык программирования, который используется для создания роботов? - PullRequest
0 голосов
/ 05 декабря 2018

Как создаются роботы?Используют ли они языки программирования, такие как Java, Python, для создания таких роботов?Почему робототехника считается все еще развивающейся вещью?Если у нас есть возможность создавать или проектировать веб-сайт, используя много языков программирования, почему мы не можем использовать одни и те же языки программирования для создания роботов самостоятельно.Конечно, материалы для создания роботов должны разрабатываться инженером-механиком, но то, что дает жизнь роботам и делает их такими, как говорят люди, основано только на языках программирования, которые очень полезны.

Ответы [ 2 ]

0 голосов
/ 22 января 2019

В основном механические роботы бывают двух типов:

  • мобильные роботы - способны перемещаться из одного места в другое
  • руки роботов - способны обрабатывать что-либо с инструментами или без них

Мобильные роботы могут быть, например.оснащен колесами или ножками.Роботизированные руки могут быть, например.Дельта роботы или роботы Скара.Домен огромен, и нет простого ответа на ваш вопрос.

Основная задача в программировании роботов - преобразование реальных координат в параметры машины.Обычно это достигается с помощью матриц / алгоритмов геометрического преобразования.

Вы можете думать о роботе как о комбинации множества сервоприводов.Как вы, наверное, знаете: один сервопривод - это управляемый двигатель с обратной связью.Вы можете сказать ему, чтобы он пошел в позицию x, и он пойдет туда с очень высокой точностью.Управление сервоприводами обычно достигается с помощью сложного ПИД-регулятора, где программное обеспечение контролирует положение, ток, крутящий момент, скорость и, возможно, другие параметры.

Чтобы роботизированная рука достигла положения (x, y, z,a, b, c) программа вычисляет координаты оси 6 двигателей и выводит их туда с некоторой интерполяцией.

Я использовал только роботов, поэтому я могу сказать вам, что промышленные роботы могут программироваться с помощьюОсновной язык.Инструкции: перейти к позиции, подождать, операторы if / else, прочитать DI, захват триггера и т. Д.

Я считаю, что каждый производитель роботов использует другой язык для программирования фактического контроллера робота.Это может быть сделано на C, C ++, Assambler, вы называете это.Но я не знаю идеи от производителей.

Причина, по которой вы не можете использовать JavaScript или PHP для программирования роботов, таких как веб-страницы, заключается в том, что алгоритм критичен ко времени.Если веб-сервер зависает, вы перезагружаете страницу и все продолжается.Facebook теперь нужно более 5 секунд для загрузки на мой компьютер.В автоматизации / робототехнике это не разрешено.Представьте себе, что автономный автомобиль будет принимать решение с задержкой 1с.Аварийный риск был бы чрезвычайно высоким.

Когда я вижу программы ПЛК, работающие с временем цикла> 20 мс, я снимаю программиста или дизайнера.Но подумайте, 20 мс означает, что он может принимать 50 решений в секунду.Представьте, что Facebook загружается так быстро.:) А сервоприводы и контроллеры роботов имеют еще меньшее время цикла.Иногда в порядке микросекунд.

Итак, да, если вы хотите заняться робототехникой, вам нужно адаптировать другое мышление.Ваш обычный айтишник не сможет вам помочь.Как @iLuvLogix предложил начать с PLC и дать ему 2 года, если вы никогда не работали с ними раньше:)

0 голосов
/ 05 декабря 2018

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

Если вы имеете в виду физических роботов ине когнитивные сервисы, такие как чат-боты и т. д., тогда вы должны изучить мехатроника , научиться программировать ПЛК (iE Step7 и TIA-Portal), разобраться в микроконтроллерах, заглянуть в связь по последовательному порту , выберите правильную платформу, создайте промежуточное программное обеспечение и серверную часть и напишите AI почти в реальном времени, например, с помощью Erlang .Вам понадобится довольно большая команда и бюджет, который не может вписаться в 32-битное целое число.

Удачи с этим;)

...