Author |
Message |
Written on: 07. 12. 2009 [14:12]
|
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
|
У нас основную массу составляют частотники Danfoss. Работают круглосуточно, сбоев практически не дают. С незначительными перебоями работают Siemens, Vacon. Есть один ABB - пока не включали. А новые линии связи также могут быть некачественными.
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 07. 12. 2009 [16:38]
|
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
|
almaz wrote:
У нас основную массу составляют частотники Danfoss. Работают круглосуточно, сбоев практически не дают. С незначительными перебоями работают Siemens, Vacon. Есть один ABB - пока не включали.
Delta, ABB, Siemens - вот эти отличились у нас. Какие именно марки, сказать не могу.
almaz wrote:
А новые линии связи также могут быть некачественными.
Сейчас то работает, с промышленником. На предыдущем месте работы было тоже самое, пока не перекроссировали на станции. Мне перекрассировка не особо помогла.
А линию мою тестировали какими-то приборами, результата не было только )
[This article was edited 2 times, at last 07.12.2009 at 16:40.]
|
Written on: 07. 12. 2009 [17:18]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
almaz wrote:
А что думаете по поводу метода тестирования ПО, приведённого мной выше?
Этот метод используется всегда, включая и стадию разработки. Сейчас-же подобным образом, с имитацией отказа оборудования тестируется система для ТЭЦ,
P.S. А в случае с Алексеем, ошибок и отказов даже придумывать не нужно.
Learn, learn and learn better than work, work and work.
|
Written on: 07. 12. 2009 [17:22]
|
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
|
Среди этих приборов осциллографа и мегометра (сплавливающего или прожигающего до полной неисправности плохие контакты), естественно, не было.
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 07. 12. 2009 [17:25]
|
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
|
roman wrote:
Этот метод используется всегда, включая и стадию разработки. Сейчас-же подобным образом, с имитацией отказа оборудования тестируется система для ТЭЦ,
Имелось ввиду применение метода конкретно к ПО. То есть взять и сломать какую-нибудь строчку кода одного из модулей, да так, чтобы компиляция проходила, а ошибка возникала чётко (например, ошибка сегментации).
[This article was edited 3 times, at last 07.12.2009 at 17:36.]
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 07. 12. 2009 [18:00]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
almaz wrote:
Имелось ввиду применение метода конкретно к ПО. То есть взять и сломать какую-нибудь строчку кода одного из модулей, да так, чтобы компиляция проходила, а ошибка возникала чётко (например, ошибка сегментации).
Умышленный вызов ошибки сегментации абсолютно никакого смысла не имеет. Ни одна программа таких ошибок не обрабатывает.
В лучшем случае по такой ошибке генерируется дамп памяти для помощи в локализации этой ошибки, а также выполняется перезапуск с согласия пользователя.
Learn, learn and learn better than work, work and work.
|
Written on: 07. 12. 2009 [20:10]
|
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
|
almaz wrote:
Среди этих приборов осциллографа и мегометра (сплавливающего или прожигающего до полной неисправности плохие контакты), естественно, не было.
Осцилографа точно у меня не было. По крайней мере домой ко мне ничего не притаскивали. Мегометр был, вот прожигать по-моиму ничего не прожигали. Но даже без всего этого уже пару месяцев все хорошо )))
|
Written on: 07. 12. 2009 [21:25]
|
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
|
roman wrote: Умышленный вызов ошибки сегментации абсолютно никакого смысла не имеет.
Это самый эффективный метод тестирования.
А смысл его следующий: надейся на лучшее, расчитывай на худшее.
roman wrote: Ни одна программа таких ошибок не обрабатывает.
Программы с микроядерной архитектурой обрабатывают.
roman wrote: В лучшем случае по такой ошибке генерируется дамп памяти для помощи в локализации этой ошибки, а также выполняется перезапуск с согласия пользователя.
А если пользователя нет и система автоматическая? Если даже будет скрипт перезапуска OpenSCADA целиком, это происходит слишком долго (около 10 сек, при большом количестве контроллеров/параметров и того больше - в нашем проекте около 30 сек). И всё это время объект находится в безконтрольном и неуправляемом состоянии, даже более того - такой перезапуск и может вызвать аварию. Вспомним катастрофу на Саяно-Шушенской: всё произошло за какие-то считанные секунды. Перезапуск одного потока процесса занял бы малую долю секунды.
Да, лучше всего контролировать не модули, а каждую нить запустить отдельным процессом!
А нельзя ли в исходном коде OpenSCADA заложить создаваемую архитектуру (микроядерная или монолитно-модульная) как опцию компиляции? Тогда можно было бы для различных применений выбрать то, что надо: производительность или бесперебойность.
Например, для проведения какого-нибудь лабораторного анализа, требующего скорость, выбрать компиляцию в производительный режим. Даже если будут сбои анализ всегда можно повторить. Такой режим как раз то, что нужно на станциях оператора, технолога, руководителя, инженера и т.д.
А для автоматизации необратимых процессов выбрать компиляцию в бесперебойный режим. Это для контроллеров, непосредственно управляющих и контролирующих процесс, и для серверов. Кроме того, бесперебойный режим позволит в реальном времени на реальном техпроцессе уверенно редактировать управляющие алгоритмы и другие элементы дерева пользовательского проекта.
PS Может выведем OpenSCADA из лабораторий в реальную жизнь полностью подготовленной?
PSPS Если это будет сделано, то можно будет смело сказать: хотя и программа предоставляется на условиях "как есть, без гарантий", но сделано всё возможное для обеспечения надёжности и безопасности. Максимально учтён жизненный опыт человечества.
PSPSPS Своего участия не отрицаю. Только у меня пока нет таких глубоких знаний OpenSCADA и ОС как у Вас. Буду тщательно изучать исходные коды OpenSCADA и строение ОС Linux и Minix3. Minix3 не готов к применению, но буду за ним внимательно следить. Как только почувствую свою готовность - подключусь к работе.
[This article was edited 11 times, at last 08.12.2009 at 09:05.]
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 08. 12. 2009 [09:09]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
almaz wrote:
roman wrote: Умышленный вызов ошибки сегментации абсолютно никакого смысла не имеет.
Это самый эффективный метод тестирования.
Вы пробовали?
almaz wrote:
А смысл его следующий: надейся на лучшее, расчитывай на худшее.
А смысла никакого. Потому как ошибка этого класса считается ошибкой программы и не обрабатывается, и даже механизмов для этого нет. Об этом я говорил в параллельной теме. ( http://en.wikipedia.org/wiki/Segmentation_fault )
almaz wrote:
roman wrote: Ни одна программа таких ошибок не обрабатывает.
Программы с микроядерной архитектурой обрабатывают.
Нет таких программ. Есть такие ОС. А если программа такой архитектуры будет, то это однозначно разные процессы. И об этом я тоже говорил.
almaz wrote:
Вспомним катастрофу на Саяно-Шушенской: всё произошло за какие-то считанные секунды. Перезапуск одного потока процесса занял бы малую долю секунды.
Вспомним. Там турбина прыгала около часа, до того как улитеть.
almaz wrote:
Да, лучше всего контролировать не модули, а каждую нить запустить отдельным процессом!
Запускайте. Кто Вам мешает?
almaz wrote:
А нельзя ли в исходном коде OpenSCADA заложить создаваемую архитектуру (микроядерная или монолитно-модульная) как опцию компиляции? Тогда можно было бы для различных применений выбрать то, что надо: производительность или бесперебойность.
Эти механизмы там заложены. И об этом я тоже говорил.
almaz wrote:
PSPSPS Своего участия не отрицаю. Только у меня пока нет таких глубоких знаний OpenSCADA и ОС как у Вас. Буду тщательно изучать исходные коды OpenSCADA и строение ОС Linux и Minix3. Minix3 не готов к применению, но буду за ним внимательно следить. Как только почувствую свою готовность - подключусь к работе.
Так вот если нет глубоких знаний, то постарайтесь не обвинять OpenSCADA в проблемах которых на самом деле нет и при этом без тени сомнения сразу толкать "ценные" идеи как решать эти самые проблемы, которых нет.
Learn, learn and learn better than work, work and work.
|
Written on: 08. 12. 2009 [10:34]
|
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
|
roman wrote: Вы пробовали?
Для ПО эту методику не применял, только для железа. Как и Вы не знал, что это возможно. Узнал благодаря Википедии и инету. Теперь применяю и буду применять. Только самая нужная программа 100% отказывает при проверке таким тестом. Серьёзнейшая проблема и брешь в надёжности OpenSCADA.
roman wrote: Так вот если нет глубоких знаний, то постарайтесь не обвинять OpenSCADA в проблемах которых на самом деле нет и при этом без тени сомнения сразу толкать "ценные" идеи как решать эти самые проблемы, которых нет.
Знаний достаточно, чтобы увидеть проблему и пути её решения. Знаний пока недостаточно чтобы эти решения реализовать. Обвинениями не занимаюсь вообще, так как обвинять всегда рано или уже поздно. Пытаюсь повлиять на развитие OpenSCADA только в сторону улучшения, так как использую её для работы. Это вообще возможно (повлиять) или Вы так всегда будете отвергать очевидные улучшения? Понимаю, что достаточно поздно вносить такие сильные концептуальные изменения и это надо было делать когда проект только зарождался, но я не знал тогда о его существовании. И сейчас я не прошу всё бросать и разрабатывать срочно патч для реализации этого, а только принять к сведению (хоть к версии OpenSCADA 3.0)
roman wrote: Запускайте. Кто Вам мешает?
Вы хоть примете разработку опции компиляции в микроядерном варианте в SVN проекта? Да и без Вашей поддержки разработка будет совсем сложна...
roman wrote: Эти механизмы там заложены. И об этом я тоже говорил.
На уровне нынешних нитей - нет. На уровне модулей, да. Пока попробуем его проработать.
Я так понял, в нескольких процессах запускается каждый существующий модуль с парочкой DAQGate - Транспорты? Такая коммутация может быть очень тормозной.
А нельзя хотя бы на будущее предусмотреть (принять к сведению) быстродействующий транспорт для DAQGate (вместо сетей связи, например, разделяемая память) для обмена между двумя процессами OpenSCADA на одной машине? Да и диспетчер нескольких опенскад на одной машине не помешал бы... Для перезапуска сбившихся процессов.
[This article was edited 5 times, at last 08.12.2009 at 11:08.]
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|