Тестирование новой версии программы 6.Х

Это мой личный форум. Здесь я буду задавать вопросы пользователям, проводить опросы, и тому подобное. Темы в этом форуме могу создавать только я, Вы можете создавать комментарии и отвечать на опросы.
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение support »

С небольшой задержкой выпущена новая бэта версия программы с номером 6.0.
Обсуждаем ёё в этой теме.
Подробнее о релизе здесь
Версия 6.Х основной задачей имеет интеграцию контроллера ESP32. В самом начале работы над этой версией обнаружилось, что текущая реализация системы описания контроллера не позволяет описать этот процессор. В связи с этим пришлось полностью переделывать эту реализации. Под это дело я решил реализовать давно требующуюся функциональность – возможность пользователям создавать собственные описания контроллера. Поэтому архитектура новых описаний контроллеров сразу разрабатывалась с учетом этого функционала, и кроме того я постарался сделать её максимально гибкой, и масштабируемой.

В версии 6.0 в меню «Инструменты» главного окна появился пункт «Редактор описаний контроллеров», который и вызывает этот редактор. В нём можно как с нуля создать новое описание, так и создать новое на базе существующего, и потом отредактировать его под собственные нужды.

Созданные описания и целые библиотеки описаний, можно экспортировать в файл и импортировать из файла.

Более подробно работа с редактором будет описана мною в уроках в ближайшее время.

Создание новой архитектуры описаний контроллера, потянуло за собой коренную переделку программы, что и вызвало задержку в сроках выхода новой версии.

Наиболее большим изменениям подверглась среда программирования на языке LAD. Но мне удалось убрать многолетние «костыли» который были «подставлены», в связи с ошибками в архитектуре сделанными ещё в самом начале разработки программы.



Внимание! В связи с оптимизацией архитектуры проекта LAD в проектах, созданных в более ранних версиях при загрузке в версию 6.0 и выше (в будущем), на входах (контактах) будут сброшены галочки «Включить подтягивающий резистор» и «Защита от дребезга». Обратите на это внимание при редактировании старых проектов.



В остальном переход на новую версию должен происходить прозрачно, но всё-таки, не стоит забывать, что это БЭТА версия, и в работе программы возможны ошибки.

Так же обновлён просмоторщик описания контроллера, и информация, выводимая в нём теперь более полная.

В ближайшее время пока не устаканится новая архитектура описания контроллера, и не уберутся самые грубые ошибки, я не буду интегрировать ESPЗ32. На время первоначального тестирования у меня в качестве основной задачи, запланировано решение давно обещанной и востребованной задачи по реализации поддержки облака Каскады.

Так что приглашаю самых смелых пользователей к тестированию новой версии программы.

P.S. 11.09.2019 Выложил (пока на хабре) первый урок по работе с редактором описаний контроллера

P.S. 22.09.19 Версия обновилась до 6.1. Подробнее здесь


P.S. 29.10.19 Версия обновилась до 6.1.1. Подробнее здесь

P.S. 01.12.19 Тема уже очень большая, я её закрываю. Продолжаем обсуждение версии 6.2.Х здесь
Автор программы FLProg.
Аватара пользователя
DrMario
Лейтенант
Сообщения: 378
Зарегистрирован: 07 ноя 2016, 13:11
Откуда: Камень-на-Оби
Имя: Евгений
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение DrMario »

Огромный размер окна при выборе контроллера и не помещается на экран. Для доступа к кнопке пришлось перемещать панель задач :shok:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
CraCk
Лейтенант
Сообщения: 674
Зарегистрирован: 10 сен 2015, 21:51
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Тестирование новой версии программы 6.Х

Сообщение CraCk »

Если речь пошла за esp32, тогда еще бы наручные часы добавить.
TTGO T-Watch
https://www.banggood.com/ru/LILYGO-TTGO ... rehouse=CN
Аватара пользователя
Rovki
Полковник
Сообщения: 5724
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 68 раз
Поблагодарили: 219 раз
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение Rovki »

Что то есп32 не нашел ...
Электронщик до мозга костей и не только
Аватара пользователя
Phazz
Полковник
Сообщения: 3125
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 233 раза
Поблагодарили: 114 раз

Тестирование новой версии программы 6.Х

Сообщение Phazz »

[ref=#ff8000]Rovki[/ref],
IMG_20190908_230524.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Тестирование новой версии программы 6.Х

Сообщение RedSky »

LAD. При попытке назначить аналоговый выход вылет.
error.log
Не очень удобно каждый раз двигать новые надписи.
Снимок.PNG
И вопрос-предложение: нельзя ли для LAD сделать переменные как в FBD?

Ещё вылет при попытке компиляции самопальной платы
error.log
85.zip

Вносит путаницу, что в редакторе контроллеров счёт пинов начинается не с нуля. На схеме получается такое двоякое трактование номера пина.
Снимок.PNG
Здесь Pin1 компилируется как 0.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
dimonsustr
Рядовой
Сообщения: 39
Зарегистрирован: 15 мар 2018, 14:39
Имя: Dima

Тестирование новой версии программы 6.Х

Сообщение dimonsustr »

support писал(а): 08 сен 2019, 16:41 С небольшой задержкой выпущена новая бэта версия программы с номером 6.0.
Обсуждаем ёё в этой теме.
Подробнее о релизе здесь
Глупый вопрос,а когда это (поддержка ESP32) примерно будет? Сейчас вынужден извращаться с Visuino, чтобы хоть как-то приподнять ESP32-Lora, какое же это Визуино тормозное убожество по сравнению с нашим, православным FLProg'ом :smile171: Только что-то простенькое слабать, голова уже трещит. MQTT я там не смог завести, REMOTE тоже.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Тестирование новой версии программы 6.Х

Сообщение grin-mpx »

Проект на Mega 2560. Блок из датчиков температуры - MAX 6675. При открытии более раннего проекта с этим блоком- удаляет пины подключения в настройках. При попытке прописать пины - не сохраняет. Не сохраняет и в новом проекте с "чистым" блоком MAX 6675.
Win XP, портабл 6.0
Аватара пользователя
DrMario
Лейтенант
Сообщения: 378
Зарегистрирован: 07 ноя 2016, 13:11
Откуда: Камень-на-Оби
Имя: Евгений
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение DrMario »

При компиляции проекта на контроллере DUE вылетает ошибка
Плата arduino_due_x_dbg (платформа sam, пакет arduino) неизвестна
Ошибка компиляции для платы Arduino Due (Programming Port).
Подобная история для контроллера ESP8266. Лечится переустановкой в менеджере плат. Баг тянется с прошлых версий.
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение support »

DrMario писал(а): 08 сен 2019, 19:39 Огромный размер окна при выборе контроллера и не помещается на экран. Для доступа к кнопке пришлось перемещать панель задач :shok:
\
Поставил в TODO на следующую версию. Сейчас окно 1024х800. Сделаю 800х600

Отправлено спустя 4 минуты 30 секунд:
RedSky писал(а): 08 сен 2019, 21:10 Вносит путаницу, что в редакторе контроллеров счёт пинов начинается не с нуля. На схеме получается такое двоякое трактование номера пина.
По умолчанию ставится номера именно ВЫВОДА платы или микросхемы. Это актуально если описывается именно микросхема. А у неё выводы начинаются с первого (от ключа). Если описывается плата, то более правильно записать альтернативное имя именно так как написано на физической плате. Тогда при наличии альтернативного имени выводится будет оно. В следующей версии я переименую это поле как просто имя вывода

Отправлено спустя 43 секунды:
DrMario писал(а): 09 сен 2019, 05:53 При компиляции проекта на контроллере DUE вылетает ошибка
Плата arduino_due_x_dbg (платформа sam, пакет arduino) неизвестна
Ошибка компиляции для платы Arduino Due (Programming Port).
Подобная история для контроллера ESP8266. Лечится переустановкой в менеджере плат. Баг тянется с прошлых версий.
В следующей версии поправлю, сейчас не успел

Отправлено спустя 24 минуты 19 секунд:
grin-mpx писал(а): 08 сен 2019, 22:45 Проект на Mega 2560. Блок из датчиков температуры - MAX 6675. При открытии более раннего проекта с этим блоком- удаляет пины подключения в настройках. При попытке прописать пины - не сохраняет. Не сохраняет и в новом проекте с "чистым" блоком MAX 6675.
Win XP, портабл 6.0
. Добавил в TODO на версию 6.1
Автор программы FLProg.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение Sancho »

[ref=#00aa00]support[/ref], Сергей, по моему, нужно отображать наоборот, альтернативное - по желанию и в скобках...
[spoiler]
2019-09-09_11-10-54.png
[/spoiler]
Думал сделать для стм сразу в проге, что-бы своими ПБ не пользоваться - увы, опять только цифры, РА, РВ не вставляются при компиляции. На кой мне искать инфу всякую, кто и чего значит, если ide спокойно переваривает РА0, РА1 и т.д. в своих функциях, и эти названия практически везде на платах и схемах?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
Phazz
Полковник
Сообщения: 3125
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 233 раза
Поблагодарили: 114 раз

Тестирование новой версии программы 6.Х

Сообщение Phazz »

[ref=#00aa00]support[/ref], В проекте при использовании блоков Nextion совместно с RemoteXY падает программа при компиляции
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение support »

Sancho писал(а): 09 сен 2019, 11:15 support, Сергей, по моему, нужно отображать наоборот, альтернативное - по желанию и в скобках...
А какое писать? Вот смотрите, вывод может быть аналоговым входом, или цифровым входом / выходом. При этом его номера как аналогового или цифрового отличаются. Что конкретно писать например при выборе его в качестве пина в ультразвуковом датчике расстояния? А ещё он может одновременно быть например SPI или I2C. Поэтому я принял решение дать возможность пользователю самому написать как он будет отображаться. С моей точки наиболее оптимальное решение - называть его так, как написано на плате. И в случае чего искать и подключать будет проще. Например у WeMos названия на плате одни, а номер цифрового пина - совершенно другие.
Автор программы FLProg.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение Sancho »

[ref=#00aa00]support[/ref], Как теперь я понял - имя у пина, по умолчанию, "Вывод 1", "Вывод 2".
Соответственно, альтернативное заменит его. Стало понятнее.

Отправлено спустя 5 минут 11 секунд:
Будет ли возможность писать имя пина, которое потом вставится в код, например, для STM вместо ардуновских 32 вписать PC13.
Или вписывать вчитываясь в картинку?
[spoiler]
STM32F103_v03.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 153 раза

Тестирование новой версии программы 6.Х

Сообщение ecoins »

На заметку разработчику (возможно это уже реализовано)
1. В новых контроллерах если использовать некоторые пины не по назначению -приводит к фатальным последствиям. Например ШИМ в STM32.
2. DUE виснет если выполнить отдельно команду analogWrite на пины 66,67. С ESP32 схожие проблемы.
3. Наверное надо хранить во флэш номера пинов по каждому типу пина. Для ESP32 ещё и для сенсорного входа.
4. ESP8266 - максимальное значение считываемое со входа A0 командой analogRead равно не 1023, а 1024. В своих проектах я обрезаю сверху.
——-
ВОПРОС КО ВСЕМ КТО ЗНАКОМ С ТЕМОЙ: умею идентифицировать контроллеры ESP8266 и ESP32 по макросам. Но не могу идентифицировать их разновидности -Wemos, Lolin и т.д. C STM32 - в Arduino IDE под каждый тип STM указан макрос.
Как решить эту проблему?
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение support »

Sancho писал(а): 09 сен 2019, 12:21 Будет ли возможность писать имя пина, которое потом вставится в код, например, для STM вместо ардуновских 32 вписать PC13.
Или вписывать вчитываясь в картинку?
Идея неплохая, но вот реализовать её будет очень сложно. Во первых в компиляторе везде переписывать методы вывода в скетч (сейчас используется printString - это для цифровых типов данных, а придётся использовать displayString - это для строк). Во вторых при использовании этих пинов в датчиках, сенсорах и подобном, я боюсь их библиотеки не поймут если при их инициализации к ним прилетит вместо типа данных byte тип данных CharArray со значением PC13. В общем мороки много, но я над этим подумаю. Пока как вариант, можно сделать пользовательский блок, в параметрах которого задавать номер пина, а внутри писать в нужный регистр. Загрузить его в описание контроллера (там есть специальная ветка), и этот блок появится в стандартной библиотеке при использовании этого описания.

P.S Только в блок надо делать в предыдущей версии, в 6.0 создание и редактирование пользовательских блоков сломалось(((( В 6.1 исправлю

Отправлено спустя 11 минут 26 секунд:
RedSky писал(а): 08 сен 2019, 21:10 LAD. При попытке назначить аналоговый выход вылет.
error.log
(31.28 КБ) 0 скачиваний
Не очень удобно каждый раз двигать новые надписи.

Снимок.PNG (1.79 КБ) 348 просмотров
И вопрос-предложение: нельзя ли для LAD сделать переменные как в FBD?

Ещё вылет при попытке компиляции самопальной платы
error.log
(31.58 КБ) 0 скачиваний
85.zip
(794.82 КБ) 0 скачиваний
Добавил в TODO
Автор программы FLProg.
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 153 раза

Тестирование новой версии программы 6.Х

Сообщение ecoins »

Sancho писал(а): ↑Сегодня{, 12:21}
Будет ли возможность писать имя пина, которое потом вставится в код, например, для STM вместо ардуновских 32 вписать PC13.
Или вписывать вчитываясь в картинку?
support писал(а): 09 сен 2019, 14:08 Идея неплохая, но вот реализовать её будет очень сложно. Во первых в компиляторе везде переписывать методы вывода в скетч (сейчас используется printString - это для цифровых типов данных, а придётся использовать displayString - это для строк).
Вопрос support: нельзя ли предусмотреть для пользовательских блоков (ПБ) тип #definе, так чтобы в DeclareSection появлялась конструкция #define ЗНАЧЕНИЕ СО ВХОДА #define ИМЯ_ЗАДАВАЕМОЕ_ПОЛЬЗОВАТЕЛЕМ.
В этом случае я вроде бы представляю как принимать значения типа PC13,D4 и т.п.
Написанные библиотеки позволяют это делать и сейчас, но огромные строковые переменные на входе в ПБ потребляют много оперативной памяти. И операции присваивания происходят всегда независимо от того, выполняются ли какие-либо действия ПБ. Для Arduino Nano критично и по RAM и по быстродействию - потому пока не реализовывал эту функцию.
User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12 июн 2017, 14:44
Имя: Евгений

Тестирование новой версии программы 6.Х

Сообщение User8 »

[ref]ecoins[/ref], зачем это? При указании константы на вход, тоже самое происходит что и define делает, просто щас в пользовательских блоках баг, что указанные на вход даже константы создают глобальные переменные, что не правильно и занимает динамическую память постоянно, если это вход String, то это очень критично, особенно для uno, nano.

Отправлено спустя 6 минут 35 секунд:
К автору пожелание, при указании константы у переменной, запретить изменять эту переменную и при вставке этой переменной на любой вход, не создавать глобальную переменную а создавать константу или дефине (const uint8_t), другими словами добавить константы, как в c++.
Аватара пользователя
Nikan
Майор
Сообщения: 1194
Зарегистрирован: 29 дек 2016, 00:49
Откуда: москва

Тестирование новой версии программы 6.Х

Сообщение Nikan »

support писал(а): 09 сен 2019, 14:08
Sancho писал(а): 09 сен 2019, 12:21 для STM вместо ардуновских 32 вписать PC13.
Или вписывать вчитываясь в картинку?
Идея неплохая, но вот реализовать её будет очень сложно.
ну тогда и STM32 не реализуется- IDE для плат STM32(кроме варианта блю пилл) не принимает обозначение портов как в ардуине,
только прямое - PC13, РВ2....
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

Тестирование новой версии программы 6.Х

Сообщение support »

Nikan писал(а): 09 сен 2019, 17:29
support писал(а): 09 сен 2019, 14:08 для STM вместо ардуновских 32 вписать PC13.
Или вписывать вчитываясь в картинку?

Идея неплохая, но вот реализовать её будет очень сложно.
ну тогда и STM32 не реализуется- IDE для плат STM32(кроме варианта блю пилл) не принимает обозначение портов как в ардуине,
только прямое - PC13, РВ2....
До СТМ я ещё доберусь. У меня была идея дать возможность при описании входа дать возможность задавать регистры. Но пока я посчитал это преждевременным, да и сам пока ясно не вижу как это будет выглядеть. Но как я уже сказал, я над этим подумаю

Отправлено спустя 23 минуты 21 секунду:
RedSky писал(а): 08 сен 2019, 21:10 И вопрос-предложение: нельзя ли для LAD сделать переменные как в FBD?
Вы понимаете, программа позиционируется как обучающая промышленному програмированию. А в "настоящем" ладе не бывает переменных, а есть промежуточные реле. Ведь лад все таки - это отражение реальных релейных схем (он и создавался в дремучие времена для упращения перевода старого релейного оборудования на контроллеры). Я даже немного расширил функционал лада и для остальных типов (реле только для булеановских велеичин) сделал аналоговый соеденитель. Ну и конечно есть именованные соеденения для работы в пределах платы, и клеммы для работы во всём проекте. Ну куда уже больше?
Автор программы FLProg.
Закрыто

Вернуться в «Темы от автора»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя