Если нет полнофункциональной программы Visual Basic

May 15, 2014 by admin Комментировать »

Вы решили создать свою программу для управления роботом с компьютера, но Visual Basic у вас оказался, я не проверял последние версии, сильно урезанным в возможностях

Что я могу посоветовать Используйте операционную систему Linux, где есть аналог VB, который называется Gambas Сегодня это уже 3 версия

Когда-то я использовал эту программу для работы с COM-портом Тогда это была первая версия программы Запустив третью версию, я сам столкнулся с некоторыми проблемами, о которых хочу предупредить вас Итак, запускаем программу:

Рис 461 Запуск программы Gambas

Как явствует из рисунка, это не первая проба моего пера Выбираем новый проект, используя помощника по созданию нового проекта

Рис 462 Создание нового проекта

Обратите внимание на отмеченные мною опции: если не установить галочку рядом с разделом

«Сетевое управление», то в менеджере компонентов не обнаружится порта последовательного обмена данными, то есть, искомого COM-порта Последующие диалоговые окна достаточно ясны

— указать папку, где будет храниться проект, указать название проекта и заголовок После задания всех необходимых атрибутов проекта вы оказываетесь в рабочем окне программы Gambas Как и в VB, есть готовая форма Ftest, двойным щелчком по которой вы вызываете её появление в рабочем окне

Рис 463 Форма проекта

В правом нижнем окне под окном свойств объектов вы можете увидеть все компоненты, которые есть в вашем распоряжении Первым я выбираю кнопку — в Gambas есть такая кнопка, которая называется переключающейся, ToggleButton Она-то мне и нужна Я переношу её на форму

Рис 464 Добавление переключающейся кнопки

На кнопке нет надписи, но, выделив кнопку щелчком мышки, в её свойствах (правое окно) можно найти свойство Text, которое и даёт возможность ввести текст (как и для формы, если выделить всю форму)

Рис 465 Добавление надписи на кнопку

Если теперь пролистывать закладки в окне элементов (есть кнопочка справа от закладок), то можно найти раздел Network, где находится SerialPort, который следует перенести (мышкой) на форму

Рис 466 Добавление COM-порта на форму

С этим, конечно, всё ясно А теперь о том, что у меня не получилось Те, кому это не интересно, могут пропустить несколько сраниц

Как и в прошлые годы, я хочу после щелчка мышки по  кнопке «Вперёд» открыть COM-порт Вначале я настраиваю свойства порта:

Рис 467 Настройка свойств порта

Вся настройка свелась к изменению скорости обмена, 1200, и указанию, где искать COM-порт Последнее я ввожу как строку, то есть, в двойных кавычках В Linux это «/dev/ttyS0»

После двойного щелчка по кнопке «Вперёд» появляется редактор текста программы с заготовкой, где я ввожу первую команду

Рис 468 Ввод команды

Как вы видите, при вводе элемента появляется подсказка Если поставить после ввода имени элемента точку, то появляется подсказка по свойствам и методам этого элемента

Рис 469 Подсказка по методам и свойствам элементов

Я выбираю то, что мне нужно, то есть, открыть порт Остаётся программу откомпилировать и запустить на проверку

Рис 4610 Кнопки компиляции программы и запуска отладчика И при запуске отладчика возникает проблема:

Рис 4611 Проблема с работой программы

Порт не открывается В прошлый раз я менял права, чтобы получить разрешение на доступ к порту В этот раз мне это не помогло Программа имеет подсказку У Gambas3 раздел Help пока не переведён Но у меня стоит и Gambas2 После запуска этой версии, а я испробовал и этот вариант, открывается подсказка к этой версии

Рис 4612 Подсказка в программе Gambas

Но не очень помогло ни чтение справки, ни использование программы в режиме администратора (root) Наверное, надо было  бы разобраться с причинами такого  поведения программы, но  я решил использовать пример, который есть в Gambas Правда, пример работает только для чтения, но текст программы можно скопировать в блокнот, а собственную программу переделать в соответствии с примером Вот переделанная программа:

Рис 4613 Переделанная программа

Название порта, как и в примере, Sport, но это, скорее, чтобы поменьше писать что-то Форма осталась такой же, настройки порта тоже, только без указания «/dev/ttyS0» (может в этом дело) Но то, что сообщения об ошибке открывания порта не появилось, ещё не значит, что порт работает И у меня новая проблема В Windows я использую осциллограф, но он не работает в Linux

Чтобы проверить, работает ли порт, я использую программу minicom — терминальная программа, которую вначале, запустив от rootа следует настроить Выглядит это так:

Рис 4614 Настройка minicom

Чтобы войти в режим настройки следует запустить терминал, командой su перейти к работе с правами администратора После ввода пароля ввести minicom -s В появившемся меню выбрать

«Настройка последовательного порта», где задать искомое устройство /dev/ttyS0 Затем выбрать

«Сохранить настройки как dfl» и выйти из настроек При настройке порта появится новое меню, в котором нужные изменения, название порта и отказ от контроля потока, выбираются с помощью нажатия указанных в меню букв на клавиатуре

После сохранения настроек можно запускать программу из терминала с помощью команды minicom /dev/ttyS0 Помимо программы понадобится кабель, у которого можно закоротить 2 и 3 выводы — соединить TxD и RxD Нажимая клавиши на клавиатуре, вы можете проверить работу программы:

Рис 4615 Проверка работы minicom

И, наконец, можно проверить работу нашей программы

Рис 4616 Проверка программы, созданной в Gambas

Текст тестовой программы:

‘ Gambas class file Public Sub _new() End

Public Sub Form_Open() End

Public Sub ToggleButton1_Click() If SportStatus = NetActive Then

Close Sport ToggleButton1Text = &quotВперёд&quot Else

SportOpen() ToggleButton1Text = &quotЕду&quot

Print #Sport, &quotA" Chr$(13) Chr$(10) Endif

End

Public Sub Form_Close()

If SportStatus = NetActive Then Close Sport End

Теперь  можно  дописывать  программу  полностью  и  проверять  её  работу  Хотя  я  и  не  очень понимаю, как определяется порт: на моём компьютере один COM-порт, а если бы было два

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

Источник: Гололобов ВН,- Самоучитель игры на паяльнике (Об электронике для школьников и не только), – Москва 2012

Оставить комментарий

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