Разработка программы для робота требует выбора среды разработки и языка программирования. Рассмотрим и проанализируем языки программирования.
Assembler дает широкий контроль над всеми ресурсами компьютера, однако реализация происходит сравнительно тяжело, поскольку любое действие внутри компьютера должно прописываться вручную. Все это относится к созданию простых программ, не требующих визуализации, а создание интерфейса усложняет задачу в разы.
Си — стандартизированный язык, который имеет высокое быстродействие и, в сравнении с Ассемблером, простую реализацию. Однако реализация любого языка более высокого уровня имеет более простой синтаксис. Также использование C поощряет написание сложного в понимании кода. Таким образом, нежелательно использовать данный язык в разработке программ с открытым кодом.
C++ - язык, главным плюсом которого является его универсальность, которая позволяет использовать программы, написанные на нем, практически в любой системе. Еще одним признаком универсальности данного языка является то, что он поддерживает различные стили программирования, а широкое распространение породило огромное количество библиотек, при помощи которых можно реализовать разнообразные методы, без самостоятельного их создания. Минусами данного языка являются наличие заголовочных файлов, которые вынуждают дважды объявлять каждую функцию и увеличивают время компиляции.
Python — язык высокого уровня, построенный на идее максимального упрощения. Даже сложные программы могут быть написаны простым кодом, который можно легко разобрать при рассмотрении другим программистом. Однако высокая простота оборачивается низким быстродействием и невозможностью модифицировать встроенные возможности дальше определенного порога.
Как уже было сказано ранее, робот основан на плате Adruino Mega 2560, что позволяет включить язык программирования Arduino в список кандидатов. Он основан на C и C++ и используется для программирования непосредственно робота, и позволяет легко контролировать любые элементы в его конструкции. После рассмотрения данных языков программирования была выбрана комбинация языка C++ и Arduino, где C++ будет использован для создания программы по управлению роботом и применяться на отдельном устройстве, например, ПК под управлением ОС Windows 8, а при помощи Arduino будет написана прошивка для робота, позволяющая ему взаимодействовать с данной программой. Этот выбор был сделан из-за того, что язык C++ представляет собой компромисс между высоким быстродействием и простотой использования, а язык Adruino прекрасно подходит для своих целей и схож с C++, что еще больше упрощает процесс программирования.
В качестве среды программирования были выбраны Arduino IDE, поскольку является единственным выбором при работе с языком Arduino, и QT Creator, как среда, имеющая в себе все необходимые библиотеки и удобные средства по созданию графического интерфейса программы контроля.