Последовательная связь по bluetooth hc-05

Я делаю ультразвуковой радар, используя шаговый двигатель и ультразвуковой датчик, и отображаю выходные данные с помощью программного обеспечения (обработка 3), которое выглядит как ppi радара на дисплее ... возможно ли заменить кабель USB соединением Bluetooth? для отправки данных (последовательный) вместо использования USB-кабеля я хочу, чтобы установка была удаленной. Я использую инструктируемый https://www.instructables.com/id/Acoustic-Radar-Display/ для кодирования мне просто нужно знать, как сделать его беспроводным через bluetooth ... просто смена com над обработкой 3 работает или я нужно внести некоторые изменения в командный режим bluetooth

, 👍-1

Обсуждение

Что вы пробовали?, @chrisl

радар не использует звук, он использует радиоволны... вы строите сонар, @jsotola

я пробовал с hc-05 без внесения каких-либо изменений в код arduino, просто включите bluetooth, и после загрузки кода подключите контакты xt rx и просто измените com-порт на обработку 3 ... я просто запутался, чтобы сделать это с одним, поэтому я попробовал все но не работает, @mukulmagotra98

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


1 ответ


Лучший ответ:

1

Если вы используете Bluetooth-модуль подобный этому с профилем SSP, он будет отображаться как COM-порт на вашем компьютере с Windows.

Теперь, если вы хотите использовать аппаратный серийный номер Arduino (т. е. продолжать использовать Serial.print(), но для Bluetooth), вам нужно подключить модуль следующим образом:

  • Bluetooth HC06 TX на цифровой контакт 0 (Arduino Rx)
  • Bluetooth HC06 RX на цифровой контакт 1 (Arduino Tx)

Но помните, что вы также загружаете свой код с помощью этих контактов. Arduino имеет на борту микросхему «USB-to-Serial», которая использует эти два контакта. Итак, теперь два объекта пытаются использовать одни и те же контакты (U2S и BT), т.е. вам придется отключить соединения U2S:

Изображение выше — это фрагмент схемы Arduino. Один из способов разъединить эти соединения — удалить эти два резистора. Но опять же, в следующий раз, когда вы захотите загрузить свой код, вы больше не сможете использовать USB-кабель.

Итак, я предлагаю вам использовать SoftwareSerial и выбрать любые два других контакта для модуля Bluetooth и изменить код, где бы вы ни общались с обработкой, используя Serial.println(). замените его на SoftwareSerial println().

,

я использую модуль hc-05 ... bluetooth, потому что он может работать как в качестве ведомого, так и в качестве ведущего, hc-06 - единственный тип ведомого ... вы хотите, чтобы я сделал свой hc-05 ведомым и сделал это. .. здесь dosent он должен быть мастером, потому что он (Bluetooth) отправляет данные на компьютер (обработка 3) ???, @mukulmagotra98

Ваш Arduino является ведущим, поэтому Bluetooth должен быть ведомым., @Fahad

я использую hc 05 для той же цели, и у него есть профиль SSP ..... и я использую только аппаратные контакты tx rx ... я использую hc 05 для той же цели, и у него есть профиль SSP ..... и я я использую только аппаратные контакты tx rx ... просто для загрузки кода отключите их, затем снова подключите, тогда это единственное необходимое изменение ..., @mukulmagotra98

я просто хотел знать ... просто подключив bluetooth к проекту и используя исходящее соединение com на ПК (он показывает входящий и исходящий com), к которому подключен bt .. возможно ли сделать его беспроводным .. для всего этого Мне просто нужно подключить bluetooth к правильному braud ie115200 в приведенном выше случае и изменить COM-порт на процессоре 3 как исходящий COM Bluetooth ... я просто хочу сделать проект беспроводным, как без USB-кабеля ... так как это sa com соединение, я спрашиваю, можно ли его заменить соединением Bluetooth ... пожалуйста, помогите мне, я застрял здесь ..., @mukulmagotra98

пожалуйста, просмотрите код один раз и посмотрите, нужны ли мне какие-то изменения в кодировании проекта. Спасибо. Это часть проекта, который мне нужно завершить, но я не могу это сделать, так как я новичок в кодировании и узнать возможности, @mukulmagotra98

Да, это возможно. Просто следуйте соединению, которое я упомянул в ответе (D0, D1). В коде измените скорость передачи данных на 9600. Как в Arduino, так и в Processing. Скорость передачи данных HC-05 по умолчанию составляет 9600 бод., @Fahad

я пробовал, но как только я вставил контакты TX Rx в аппаратные контакты 0 и 1 ... система останавливается ... я изменил скорость HC-05 на 115200 с помощью AT-команд с 1 стоповым битом и 0 битом четности, AT +UART=115200,0,0... мне нужно использовать программные серийные номера... потому что непрерывные "s", которые r отправляют на компьютер, используют это соединение, или я делаю что-то не так... я не могу использовать 9600, потому что это слишком медленно для радара ... спасибо за всю вашу помощь, @mukulmagotra98

Когда вы подключаете свой Bluetooth к Arduino с помощью D0 и D1, USB-кабель от Arduino все еще подключен к вашему ПК?, @Fahad

да, он подключен. tx rx pins к bluetooth, вся система останавливается, как при остановке развертки при обработке 3.. которая работала нормально до этого подключения. rx tx и отсоедините usb-кабель, @mukulmagotra98

Итак, на плате Arduino есть микросхема USB-to-Serial. И это с использованием D0 и D1. Без их отключения вы не сможете использовать эти два контакта. Я думаю, что лучше использовать software serial. Выберите любые другие два вывода, подключите Bluetooth и везде в коде, который вы отправляете что-то на ПК, замените его программным серийным номером.println(), @Fahad

Я тоже обновил свой ответ., @Fahad

я внес изменения в arduino ide, заменив все жесткие серийные номера на программные серийные номера, такие как серийный номер.доступный для myserial.доступный (пример) я изменил каждую строку с серийным номером на мой серийный номер (myserial - это серийный номер моего программного обеспечения)... а затем подключил tx и rx bluetooth изменил uart на 115200,0,0 для скорости передачи .... затем соединил bluetooth с ноутбуком, увидел исходящий последовательный порт bluetooth (мой был com7), затем изменил serial.list в обработке 3 для того же ( com7) порт .. проблемы, с которыми я сталкиваюсь r (usb не подключен arduino питается от батареи 9v через разъем), @mukulmagotra98

он показывает, что COM-порт занят ... иногда он подключается, но на дисплее какое-то время отображаются эхо-запросы и развертка ... как будто он не будет работать бесконечно ... даже для одного полного развертки радара ... а иногда он просто начинается слишком медленно Вращение двигателя противника ... но самая большая проблема - это полная развертка .... чтобы сделать ее 360, я удвоил массив при обработке, сделал дополнительные координатные сетки и увеличил количество шагов в arduino ide, так что в основном я получил то, что хотел, но с usb подключен..., @mukulmagotra98

чтобы получить его по беспроводной сети, я попробовал software serial, и внесенные изменения заключались в том, что каждое последовательное событие было изменено на software serial, но он не работает должным образом. Мне нужно сохранить некоторые серийные номера как исходные и не менять их на software serial ... только отправка необходимо изменить часть (расстояния в азимутальном направлении) или другие вещи, такие как запуск шагового двигателя при щелчке переключателя и другие последовательные доступные события., @mukulmagotra98

мне нужно создать отдельный порт в обработке или достаточно просто изменить serial.list на исходящий последовательный порт bluetooth (например, «Serial myBluePort;» при импорте processing.serial) я использую ранее созданный последовательный порт myPort для того же .. если я не использую его для USB, просто изменив его серийный номер, список должен сделать работу, @mukulmagotra98