Страница 26 из 29

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 15:08
look
Вообщем, создал совершенно пустой проект, запустил веб клиента и локальный веб сервер встроенный в FLProg.
Открываю страницу в браузере и в консоли браузера в разделе network вижу что запросы сыпятся с периодичностью в 2-3 миллисекунды.

В таком виде использовать новый функционал веб сервера-клиента невозможно.
Встроенный яваскрипт конечно можно вырезать каждый раз руками перед компиляцией кода, но лучше бы пока, если устранение бага займёт много времени, сделать опционально кнопку в flprog: использовать встроенный яваскрипт ДА/НЕТ

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 15:18
artemka19
artemka19 писал(а): 19 июн 2022, 14:54 Вот это все вышеописанное нужно делать в ArduinoIDE перед заливкой в МК
результат работы в железе (запросы раз в 2 секунды):
[spoiler]
2.png
[/spoiler]

В ArduinoIDE должно быть так:
[spoiler]
//////////////////////////////////////оригинал//////////////////////////////////
/*
String sendWebServerResponseScriptPart1 =" function gND(){\nlet x=gX();\nx.onreadystatechange=function()\n{\nif(x.readyState==4)\n{pRD(x);\n}\n};\nlet r=\"/zapros_new_data?page=";
String sendWebServerResponseScriptPart2 ="\";\nx.open(\"GET\",r,true);\nx.send();\n}";
*/
////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////своя частота запросов////////////////////////////

String sendWebServerResponseScriptPart1 ="function gND(){";
String sendWebServerResponseScriptPart2 ="}setInterval(timer123,2000);function timer123(){let x=gX();let r=\"/zapros_new_data?page=1\";x.open(\"GET\",r,true);x.send();x.onreadystatechange=function(){if(x.readyState==4){pRD(x);}}}";

//////////////////////////////////////////////////////////////////////////////////////////
[/spoiler]

*не забываем экранировать кавычки обратным слешем
*не забываем менять адрес запроса на свой (r=\"/zapros_new_data?page=";)
*предварительно нужно сделать вставляемый текст в одну строку (т.е. убрать перенос строк например в блокноте)

Отправлено спустя 1 минуту 22 секунды:
look писал(а): 19 июн 2022, 15:08 В таком виде использовать новый функционал веб сервера-клиента невозможно.
все возможно и прекрасно работает даже с такой частотой)))

Отправлено спустя 1 минуту 14 секунд:
[ref]look[/ref],
курим тему и наслаждаемся))))
viewtopic.php?f=202&t=7761&start=120
look писал(а): 19 июн 2022, 15:08 Встроенный яваскрипт конечно можно вырезать каждый раз руками перед компиляцией кода, но лучше бы пока, если устранение бага займёт много времени, сделать опционально кнопку в flprog: использовать встроенный яваскрипт ДА/НЕТ
выше продемонстрировал возможность установки СВОЕЙ частоты запросов.

[spoiler]
вот это можно вообще завернуть в пользовательский блок:
//////////////////////////////////////////своя частота запросов////////////////////////////

String sendWebServerResponseScriptPart1 ="function gND(){";
String sendWebServerResponseScriptPart2 ="}setInterval(timer123,2000);function timer123(){let x=gX();let r=\"/zapros_new_data?page=1\";x.open(\"GET\",r,true);x.send();x.onreadystatechange=function(){if(x.readyState==4){pRD(x);}}}";

//////////////////////////////////////////////////////////////////////////////////////////

и тогда останется лишь закомментировать две строчки в ArduinoIDE )))

*вот только ЗАЧЕМ это делать, если все прекрасно работает и со штатной частотой запросов?)
[/spoiler]

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 18:01
look
artemka19 писал(а): 19 июн 2022, 15:18 В ArduinoIDE должно быть так:
Благодарю.
Да, в таком виде работает, но сетинтервал в этом варианте действует так же на работу остальных запросов, т.е. кнопки тормозят 2 секунды. Для установки значений в меню не очень удобно.
artemka19 писал(а): 19 июн 2022, 15:18 *вот только ЗАЧЕМ это делать, если все прекрасно работает и со штатной частотой запросов?)
В смысле прекрасно? У меня загрузка процесса браузера больше 90% и память жрет не по детски.

Считаю правильным решением, если бы время обновления текстовой информации настраивалось в программе flprog, а кнопки отрабатывались по событию (без тормозов). А ещё лучше, и вывод текста и кнопки по изменению состояния обновлялись :smile37:

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 18:40
artemka19
look писал(а): 19 июн 2022, 18:01 а кнопки отрабатывались по событию (без тормозов)
они и отрабатываются без тормозов!
а вот их статус пооучаешь как раз с той задержкой, которую сам и установил)))

Отправлено спустя 1 минуту 3 секунды:
look писал(а): 19 июн 2022, 18:39 память жрет не по детски
это только если включен режим разработчика в браузере

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 18:59
artemka19
look писал(а): 19 июн 2022, 15:18 У меня загрузка процесса браузера больше 90%
загрузка у браузера, а виноват флпрог?)))
логика)

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 19:06
artemka19
look писал(а): 19 июн 2022, 18:01 У меня загрузка процесса браузера больше 90% и память жрет не по детски.
0 процентов загрузки.
и с памятью все норм.
[spoiler]
3.png
[/spoiler]
ЧЯДНТ ?

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 19:23
look
artemka19 писал(а): 19 июн 2022, 18:59 загрузка у браузера, а виноват флпрог?)))
логика)
FLPROG создаёт хтмл страницу с яваскриптом который открывается в браузере.

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

download/file.php?id=37284

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 19:41
Phazz
[ref]look[/ref], Хорошо, в железе как работает?

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 19:59
artemka19
look писал(а): 19 июн 2022, 19:23 Загрузите пожалуйста скетч из моего первого сообщения, запустите хотя бы на локальном веб сервере, откройте в браузере, подождите минуту, покажите пожалуйста загрузку процесса в диспетчере задач
браузер хром.
загрузка ЦП: ~15 %
память: ~40 MB
[spoiler]
в отладке-ресурсы-хром.png
[/spoiler]

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 20:16
artemka19
artemka19 писал(а): 19 июн 2022, 19:59 браузер хром.
пробежался по браузерам: примерно одинаково все.
Наименьшая загрузка ЦП у браузера IE11.
Наибольшая у PaleMoon - но этот PaleMoon заточен под слабое железо и некорректно работает на многоядерных процессорах.

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 20:33
artemka19
artemka19 писал(а): 19 июн 2022, 19:59 браузер хром.
загрузка ЦП: ~15 %
память: ~40 MB
причем это в отладчике!!
Phazz писал(а): 19 июн 2022, 19:41 Хорошо, в железе как работает?
в железе там в 10(!) раз меньше загрузка ЦП:
[spoiler]
в железе загрузка цп.png
[/spoiler]

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 20:35
artemka19
artemka19 писал(а): 19 июн 2022, 20:33 в железе там в 10(!) раз меньше загрузка ЦП:
НО почему?)
да потому что при работе Отладчика, скорость обмена гораздо выше, чем в реальной сети.

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 20:42
artemka19
artemka19 писал(а): 19 июн 2022, 20:35 да потому что при работе Отладчика, скорость обмена гораздо выше, чем в реальной сети.
примерно в 10(!) раз - т.е. за одну единицу времени, в отладке в 10 раз больше данных прогоняем:
[spoiler]
в реальной сети:
реальная сеть.png
в отладке:
в отладчике.png
[/spoiler]

Выход новой бэта версии программы

Добавлено: 19 июн 2022, 20:43
artemka19
вот поэтому можно делать так (при работе с отладчиком):
Phazz писал(а): 19 июн 2022, 13:03 Можно ограничить количество запросов через отладку в хроме

Выход новой бэта версии программы

Добавлено: 20 июн 2022, 16:53
Dryundel
[ref=#00aa00]support[/ref], в версии 5.7.2 обнаружил такой баг:
При создании переменной, входа, выхода в верхней панели они не отображаются в дереве проекта.
Если же создавать в дереве, то вообще их нигде нет. Окно не обновляется.
Помогает переключение на другой проект и обратно.
[spoiler]
55.jpg
[/spoiler]

Выход новой бэта версии программы

Добавлено: 20 июн 2022, 17:59
artemka19
Dryundel писал(а): 20 июн 2022, 16:53 При создании переменной, входа, выхода в верхней панели они не отображаются в дереве проекта.
Если же создавать в дереве, то вообще их нигде нет. Окно не обновляется.
они появляются, но нужно чтобы проект с нуля создан был в 7.5.2:

[spoiler]
https://disk.yandex.ru/i/t1EMR0WcAEzszw
[/spoiler]
*Win7 x64

Выход новой бэта версии программы

Добавлено: 20 июн 2022, 18:02
vovka1973
Dryundel писал(а): 20 июн 2022, 16:53 Если же создавать в дереве, то вообще их нигде нет. Окно не обновляется.
Помогает переключение на другой проект и обратно.
так же и с пинами если меняешь то при загрузке проекта в контроллер остаются старые пины пока что нибудь не подвигать в проекте блок какой нибудь.

Выход новой бэта версии программы

Добавлено: 20 июн 2022, 18:26
artemka19
но наверное это все же баг)

Выход новой бэта версии программы

Добавлено: 23 июн 2022, 11:39
PavelKrd
Версия 7.5.2
SCADA проект
Если в рабочем окне плеера нажать ПРАВУЮ кнопку мыши, то плеер закрывается

Ещё пара багов в прикреплённом описании. Пока не разобрался как вставлять в сообщение картинки.Изображение

Выход новой бэта версии программы

Добавлено: 23 июн 2022, 22:02
Dryundel
[ref=#00aa00]support[/ref], прошу обратить внимание на RP2040 и W806 W801 W800. С документацией на последние конечно сложней, а вот Raspberry Pi Pico, Arduino очень таки активно внедряют.
Соотношение цена функционал весьма приятное.