Перейти до публікації
Пошук в
  • Додатково...
Шукати результати, які містять...
Шукати результати в...

Вопросы по умному дому, не требующие создания отдельных тем

metall_version

Рекомендовані повідомлення

Все ж таки невелика допомога порібна, але трохи по іншому питанню.
Придбав на алі такий девайс, з аналоговими виходами 0-10В і підключенням по rs485. Пробую підключити до ESPhome, записав код, але не працює, змінюю значення в esphome, а напруга на виході по нулях. Підозрюю що проблема в коді, але не можу зрозуміти де саме.

Прихований текст

image.png.4f7b063529e769ed30b2cecdb6d4255e.png

image.png.39442e789a4fe454d08f1c6bbd001716.png

image.png.db87064fb23be688ec76b9226edbc202.png

Прихований текст

image.thumb.png.dac0bb27449ee7022dda1b59c01edfe4.png

image.thumb.png.37a203cfa3b026f57053615e9ca8b9ed.png

 

uart:
  tx_pin: GPIO1
  rx_pin: GPIO3
  baud_rate: 9600
  stop_bits: 1
  id: mod_bus1

modbus:
  - id: modbus_10V
    uart_id: mod_bus1

modbus_controller:
  - id: speed_controller
    address: 1
    modbus_id: modbus_10V
    update_interval: 1s

number: 
  - platform: modbus_controller
    modbus_controller_id: speed_controller
    id: ao1_1
    name: "AO1_1"
    min_value: 0
    max_value: 1000
    address: 42049
    value_type: FP32
    mode: box

 

Змінено користувачем TaurosRMK
Посилання на коментар
Поділитися на інших сайтах

1 годину тому, TaurosRMK сказав:

Все ж таки невелика допомога порібна, але трохи по іншому питанню.
Придбав на алі такий девайс, з аналоговими виходами 0-10В і підключенням по rs485. Пробую підключити до ESPhome, записав код, але не працює, змінюю значення в esphome, а напруга на виході по нулях. Підозрюю що проблема в коді, але не можу зрозуміти де саме.

  Приховати вміст

image.png.4f7b063529e769ed30b2cecdb6d4255e.png

image.png.39442e789a4fe454d08f1c6bbd001716.png

image.png.db87064fb23be688ec76b9226edbc202.png

  Приховати вміст

image.thumb.png.dac0bb27449ee7022dda1b59c01edfe4.png

image.thumb.png.37a203cfa3b026f57053615e9ca8b9ed.png

 

uart:
  tx_pin: GPIO1
  rx_pin: GPIO3
  baud_rate: 9600
  stop_bits: 1
  id: mod_bus1

modbus:
  - id: modbus_10V
    uart_id: mod_bus1

modbus_controller:
  - id: speed_controller
    address: 1
    modbus_id: modbus_10V
    update_interval: 1s

number: 
  - platform: modbus_controller
    modbus_controller_id: speed_controller
    id: ao1_1
    name: "AO1_1"
    min_value: 0
    max_value: 1000
    address: 42049
    value_type: FP32
    mode: box

 

якщо ao1_1 - аналоговий вихід, або pwm, то max_value: 1

в платформі модбас може бути так само

Змінено користувачем yur43
Посилання на коментар
Поділитися на інших сайтах

34 хвилини тому, yur43 сказав:

якщо ao1_1 - аналоговий вихід, або pwm, то max_value: 1

в платформі модбас може бути так само

Та ні, проблема точно не в цьому. Це може бути будь яке число, а в даному випадку там задане мінімільне та максимальне значення 0-1000. І пристрій в цьому діапазоні працює, 0 - 0В, 1000 - 10В. Але таке відчуття що немає зв'язку з пристроєм, чи що...

Посилання на коментар
Поділитися на інших сайтах

5 годин тому, TaurosRMK сказав:

Та ні, проблема точно не в цьому. Це може бути будь яке число, а в даному випадку там задане мінімільне та максимальне значення 0-1000. І пристрій в цьому діапазоні працює, 0 - 0В, 1000 - 10В. Але таке відчуття що немає зв'язку з пристроєм, чи що...

Я не знаю що там у ESPHome але можливо треба в усіх адресах відмінусовати 40000, тобто правильна адреса буде без 4. Я перед тим як щось з пристроєм робити запускаю майстер на компі та дивлюсь що там та як - мастер. Рекомендую спочатку руками спробувати туди приєднатись та зрозуміти що все працює та адреси правильні. Як мінімум вичитати поточну конфігурацію швидкості для початку. Ну це якщо є USB-RS485

Посилання на коментар
Поділитися на інших сайтах

19 хвилин тому, k-master сказав:

Я не знаю що там у ESPHome але можливо треба в усіх адресах відмінусовати 40000, тобто правильна адреса буде без 4. Я перед тим як щось з пристроєм робити запускаю майстер на компі та дивлюсь що там та як - мастер. Рекомендую спочатку руками спробувати туди приєднатись та зрозуміти що все працює та адреси правильні. Як мінімум вичитати поточну конфігурацію швидкості для початку. Ну це якщо є USB-RS485

Хм, попробую без "4". В інструкції стандартні параметри вказані, їх і записав, для надійності зробив reset, не допомогло. USB-RS485 замовлю завтра і перевірю, був би в наявності, так би і зробив, хоча думав через ESPhome зразу попробую код писати, але щось пішло не так.

Посилання на коментар
Поділитися на інших сайтах

7 годин тому, TaurosRMK сказав:

Хм, попробую без "4". В інструкції стандартні параметри вказані, їх і записав, для надійності зробив reset, не допомогло. USB-RS485 замовлю завтра і перевірю, був би в наявності, так би і зробив, хоча думав через ESPhome зразу попробую код писати, але щось пішло не так.

Мова оригіналу з інтернету:

Цитата

The thing that might confuse you (and everyone else) is that addresses that start with 3 & 4 indicates that it's a register. But the register address in modbus tcp is a word. So address 30001 is actually not a request for address 30001 but rather a request for the first address of the input register type 3.

Там правда про tcp, але то немає значення 

Посилання на коментар
Поділитися на інших сайтах

4 години тому, k-master сказав:

Там правда про tcp, але то немає значення

В тій інструкції яку дав продавець є такий скріншот. Виходить що адреса все ж таки без "4", але щось я не розібрався що та четвірка означає в esphome. Пробував писати адреси без "4", реакції ніякої. Треба напевно в коді розбиратися, як його правильно записати.

image.thumb.png.d2ede00e5e35347bedc5ca50ce1dbcb2.png

Посилання на коментар
Поділитися на інших сайтах

1 година тому, TaurosRMK сказав:

В тій інструкції яку дав продавець є такий скріншот. Виходить що адреса все ж таки без "4", але щось я не розібрався що та четвірка означає в esphome. Пробував писати адреси без "4", реакції ніякої. Треба напевно в коді розбиратися, як його правильно записати.

image.thumb.png.d2ede00e5e35347bedc5ca50ce1dbcb2.png

Теоретично та 4-ка може означати тип регистра і в принципі за нею можна визначити типю Але я такого не бачив, ось приклад з еспхоме:

Цитата

output:

- platform:

modbus_controller modbus_controller_

id: modbus1

address: 2048

register_type: holding

value_type: U_WORD

multiply: 1000

Тут ми бачимо як тип (holdind) так й коротку адресу (2048). Шукай як написати схожий конфіг для твого випадку. В тебе є адреса у прикладі, але типа регістра нема. Думаю що у цьому та ще у неправильній адресі проблема. А може ти в принципі неправильно написав конфіг модбаса для esphome.

  • Конфуз 1
Посилання на коментар
Поділитися на інших сайтах

Блін, а проблема то там, де її не чекали. Попробував два різні TTL-RS485 модулі, результат однаковий, по коду наче все мало працювати, але не працює. Вирішив попробувати іншу esp і о чудо, все працює. Що з тою esp було, без поняття, підключення проводів було правильне. Але з новою також якісь нюанси, при оновленні коду вона не може підключитися до wi-fi мережі, якщо до неї підключений модуль TTL-RS485, без модуля підключається. Але це фігня, це маленькі D1mini/S2mini просто як тестові, на основній ESP наче немає проблем з підключенням до wi-fi і по RS485, треба буде тестити на ній.

Адреси записував без "4", але в інструкції вони чомусь зі зміщенням, там вихід #1 - 2049, а фактично на мінус 1, тобто 2048 і тд.

Замовив USB-RS485, подивлюся що там, може китайці напутали з адресами.

number:
  - platform: modbus_controller
    modbus_controller_id: speed_controller
    address: 2048
    id: vo1_1
    name: "vo1_1"
    min_value: 0
    max_value: 100
    step: 1.0
    value_type: U_WORD
    unit_of_measurement: "%"
    multiply: 10

 

Посилання на коментар
Поділитися на інших сайтах

1 година тому, TaurosRMK сказав:

Блін, а проблема то там, де її не чекали. Попробував два різні TTL-RS485 модулі, результат однаковий, по коду наче все мало працювати, але не працює. Вирішив попробувати іншу esp і о чудо, все працює. Що з тою esp було, без поняття, підключення проводів було правильне. Але з новою також якісь нюанси, при оновленні коду вона не може підключитися до wi-fi мережі, якщо до неї підключений модуль TTL-RS485, без модуля підключається. Але це фігня, це маленькі D1mini/S2mini просто як тестові, на основній ESP наче немає проблем з підключенням до wi-fi і по RS485, треба буде тестити на ній.

Адреси записував без "4", але в інструкції вони чомусь зі зміщенням, там вихід #1 - 2049, а фактично на мінус 1, тобто 2048 і тд.

Замовив USB-RS485, подивлюся що там, може китайці напутали з адресами

 

Може той модуль бажає 5В TTL, а есп видає 3.3В. А віфі може не стартувати через погане живлення. Там ще можуть бути приколи з пінами але я не пам'ятаю щоб щось на старті заважало вайфаю.

Я собі такі модулі використовую - 6 in 1 - все в одному, не треба мати пачку різних.

  • Лайк 2
Посилання на коментар
Поділитися на інших сайтах

39 хвилин тому, k-master сказав:

Може той модуль бажає 5В TTL, а есп видає 3.3В. А віфі може не стартувати через погане живлення. Там ще можуть бути приколи з пінами але я не пам'ятаю щоб щось на старті заважало вайфаю.

Я собі такі модулі використовую - 6 in 1 - все в одному, не треба мати пачку різних.

Модуль підтримує 3.3/5В, і взагалі більшість модулів йдуть універсальні на 3.3/5В, принаймні з того барахла що в мене назбиралося ))) ESP аналогічно, має піни живлення 3.3/5В, через 5В можна живити саму ESP, так і віддавати, якщо ESP живиться через usb.

image.png.952d5443c2be8aa9cde699e7d40bf2e2.png

Посилання на коментар
Поділитися на інших сайтах

15 хвилин тому, TaurosRMK сказав:

Модуль підтримує 3.3/5В, і взагалі більшість модулів йдуть універсальні на 3.3/5В, принаймні з того барахла що в мене назбиралося ))) ESP аналогічно, має піни живлення 3.3/5В, через 5В можна живити саму ESP, так і віддавати, якщо ESP живиться через usb.

Те що у ESP на платі є 2 живлення не означає що вона може працювати від 5В. Це означає що на платі стоїть перетворювач 5->3.3. І якщо подати просто 3.3 то там де 5 не буде нічого. Рівні у ESP завжди 3-х вольтові що іноді приводить до проблем при роботі з пристроями котрі живляться від справжніх 5-ти вольт та мають 5-ти вольтові рівні.

Посилання на коментар
Поділитися на інших сайтах

16 хвилин тому, k-master сказав:

Те що у ESP на платі є 2 живлення не означає що вона може працювати від 5В. Це означає що на платі стоїть перетворювач 5->3.3. І якщо подати просто 3.3 то там де 5 не буде нічого. Рівні у ESP завжди 3-х вольтові що іноді приводить до проблем при роботі з пристроями котрі живляться від справжніх 5-ти вольт та мають 5-ти вольтові рівні.

Так я і не казав що сам модуль esp працює від 5В, мова йде про цілу плату, яку можна живити як 3.3В, так і 5В, що там дальше відбувається це вже інше питання. Поки проблем з модулями не було, як вже згадував вище, або вони мали універсальний вхід 3.3/5В, або два окремих, і як не підключай до esp, все працювало. Але із того що я використовував це були модулі з UART, I2C, SPI, думаю там все стандартизовано і працює незалежно від живлення. А от з рівнями ще нічого не використовував.

Тим не менше, знайшов проблему чому з попередньою esp не працювало. На платі є два окремих піни UART (TX/RX), підключав модуль до них, не заводився. Не розбирався чому, можливо це особливість самої плати, тому що D1 Mini це ESP8266, а S2 Mini на якій все працює, це вже ESP32. Почитав що на D1 Mini є ще два додаткових піни, які можна під UART використати, якщо вони не зайняті. Переназначив, записав програму, працює 😄 А от чому на стандартних пінах TX/RX не працювало, це вже інше питання. Головне що вдалося з пристроєм зв'язатися і перевірити роботу.

Посилання на коментар
Поділитися на інших сайтах

Створіть акаунт або увійдіть у нього для коментування

Ви маєте бути користувачем, щоб залишити коментар

Створити акаунт

Зареєструйтеся для отримання акаунта. Це просто!

Зареєструвати акаунт

Увійти

Вже зареєстровані? Увійдіть тут.

Увійти зараз
×
×
  • Створити...