Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.06.26;
Скачать: [xml.tar.bz2];

Вниз

реализовать работу устройства "Автоматический выключатель"   Найти похожие ветки 

 
Soulofangel   (2011-03-03 14:53) [0]

мне дали задание но я его не совсем понял объясните пожалуйста с чего начать от чего отталкиваться с таким программированием я ещё не сталкивался.
Задание такое:
описание:Необходимо написать программу в стиле "Концепции конечного автомата"
(парагдима программирования "автоматное программирование).

Задание:реализовать работу устройства "Автоматический выключатель"
Сведения об этом стройстве:
Автоматический выключатель имеет 2 основных  состояния вкл\выкл

Он сам может при перегрузках по току и переходить в третье физическое состояние (физически автоматический выключатель
отключен, но при это переключатель наполовину взведён).
       
Его может включать выключать человек вручную.

Внешняя система автоматически может его только отключать.

Автоматический выключатель имеет обратную дискретную связь для систем автоматизации

Этот дискретный сигнал сообщает системе автоматизации о состоянии автоматического выключателя:
       либо он включен либо выключен.

Форма реализации: программа с формой и диалоговыми окнами или др. интерфейсом,
позволяющим протестировать как работу авт выключателя, так и проверить саму
программу самостоятельно либо иным лицам.

ещё сказали должно быть 2 программы сама программа и некий чёрный ящик с помощью которого может проверить её что за чёрный ящик я тоже не понял:( она должна быть много поточка в без прирывном цыкле


 
antonn ©   (2011-03-03 15:03) [1]

хорошая курсовая :)


 
Медвежонок ХМЛ ©   (2011-03-03 15:06) [2]

а что такое "реализовать работу" ?


 
Soulofangel   (2011-03-03 15:10) [3]

я думаю программно реализовать работу этого устройства


 
Плохиш ©   (2011-03-03 15:11) [4]


> а что такое "реализовать работу" ?

Ты не выпендривайся, ты код давай!


 
Плохиш ©   (2011-03-03 15:12) [5]


> Soulofangel   (03.03.11 15:10) [3]
>
> я думаю программно реализовать работу этого устройства

В чём проблема? Три состояния реализовать или таймер в цикле запустить?


 
Игорь Шевченко ©   (2011-03-03 15:16) [6]


> я думаю программно реализовать работу этого устройства


Для этого программист нужен.


 
Soulofangel   (2011-03-03 15:18) [7]

просто понимаете я не понимаю как вообще написать программу так чтобы с компьютера можно было управлять этим устройством?  или этого делать мне не обязательно а надо просто реализовать эти три сотояния ?программа должна быть такой чтоб мой код можно было взять и использовать с этим устройством.


 
KilkennyCat ©   (2011-03-03 15:27) [8]


> мне дали задание но я его не совсем понял

я тоже не понял.
но в отличие от меня, у тебя есть возможность подойди к преподу и попросить объяснить подробнее.

но в отличие от препода, я могу сделать тебе за деньги. 50 WMZ - в виде программы, 100 WMZ - в виде устройства.


> Медвежонок ХМЛ ©   (03.03.11 15:06) [2]

это значит стоять около рубильника, включать выключать по первому требованию человека, орать после операции "Включено!" или "Выключено!" или "Затрудняюсь проанализировать состояние ввиду противоречивости команд и отстуствии рубильника, ибо сперли!", кроме того, эпизодически проверять (языком) наличие напряжения, чтобы перейти в третье состояние.


 
KilkennyCat ©   (2011-03-03 15:29) [9]


> как вообще написать программу так чтобы с компьютера можно
> было управлять этим устройством?

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


 
Soulofangel   (2011-03-03 15:39) [10]


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


> это значит стоять около рубильника, включать выключать по
> первому требованию человека, орать после операции "Включено!
> " или "Выключено!" или "Затрудняюсь проанализировать состояние
> ввиду противоречивости команд и отстуствии рубильника, ибо
> сперли!", кроме того, эпизодически проверять (языком) наличие
> напряжения, чтобы перейти в третье состояние.
>
>

это мне очень помогло спасибо большое тебе ещё пару вопросов: какую информацию мне надо найти об устройстве и что за чёрный ящик


 
KilkennyCat ©   (2011-03-03 15:41) [11]

об устройстве надо получить VID и PID.
а черный ящик - тут три варианта:
это на самом деле оранжевый ящик
это ящик с дохлой(наверное) кошкой
это ящик "знатоков"


 
Soulofangel   (2011-03-03 15:43) [12]

такие программы на делфи реально реализовать или они на vb пишутся?


 
KilkennyCat ©   (2011-03-03 15:44) [13]

скорее всего, под чя имелся ввиду симулятор.


 
KilkennyCat ©   (2011-03-03 15:44) [14]

скорее всего, под чя имелся ввиду симулятор.


 
Soulofangel   (2011-03-03 15:49) [15]

вот вот я тоже думаю симулятор


 
Soulofangel   (2011-03-03 15:51) [16]

но почему так и не сказал ? мне он сказал должен быть чёрный ящик с помощью которого можно проверить работает ли твоя программа.


 
clickmaker ©   (2011-03-03 15:56) [17]

> должен быть чёрный ящик

Form1.Color := clBlack;


 
Dennis I. Komarov ©   (2011-03-03 15:58) [18]

Зыж форма, а надо ясчик...


 
Soulofangel   (2011-03-03 16:02) [19]

по читал инфу, на сколько я понял к компу он не присоединяется никак значит под чя  пишу  симулятор.


 
KilkennyCat ©   (2011-03-03 16:09) [20]

почему все-таки не спросить препода?
неужели потому, что неизвестно, кто он?


 
clickmaker ©   (2011-03-03 16:09) [21]

> Зыж форма, а надо ясчик...

ну, можно OpenGL заюзать. Или DirectX
заодно и рубильник в 3D выполнить.
Будет "Автоматический выключатель - 3D". Скоро на экранах ваших мониторов


 
KilkennyCat ©   (2011-03-03 16:17) [22]

я понял! черный ящик - это сам комп в корпусе черного цвета!
полностью соответсвует тз. софтварно можно только выключить (не берем функции биоса в расчет, это опционально). а человек и выключить и включить.


 
Anatoly Podgoretsky ©   (2011-03-03 16:48) [23]


> Soulofangel   (03.03.11 15:18) [7]

Можно, если использовать классы, а сам класс у тебя хорошо описан, но от тебя требуется понимание ООП и умения это понимание реализовать в коде.


 
И. Павел ©   (2011-03-03 19:06) [24]

Если с программой должен работать "черный ящик", то это, скорее всего, значит, что программа должна иметь единый интерфейс. Проще говоря, уметь работать совместно с любой программой (не важно, какой структуры), которая знает этот интерфейс. ИМХО, другого варианта того, что тут означает черный ящик, тут нет.


 
Inovet ©   (2011-03-03 19:20) [25]

> [22] KilkennyCat ©   (03.03.11 16:17)
> человек и выключить и включить.

А в третье состояние ещё сам должен уметь, кстати что это будет? Завис не годится - надо ответить отключен. Я так понял.


 
Soulofangel   (2011-03-03 20:19) [26]

значит так пишу программу которая вытаскивает из процесса "чёрный ящик" значения вкл или выкл . я правильно думаю?


 
Soulofangel   (2011-03-03 20:20) [27]

и каждую 0.01 сек проверяет напряжение если выше нормы то 3 состояиние - выкл


 
Soulofangel   (2011-03-03 21:34) [28]


> программа должна иметь единый интерфейс. Проще говоря, уметь
> работать совместно с любой программой (не важно, какой структуры),
>  которая знает этот интерфейс.

и ещё это ввело меня в заблуждение...


 
KilkennyCat ©   (2011-03-03 21:39) [29]

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


 
Soulofangel   (2011-03-04 00:02) [30]

как думаете что мне использовать для обмена данными между процессами  лучше? FileMapping  или wm_copydata?


 
Игорь Шевченко ©   (2011-03-04 00:04) [31]


> как думаете что мне использовать для обмена данными между
> процессами  лучше?


Йода ?


 
Soulofangel   (2011-03-04 00:50) [32]


>
> > как думаете что мне использовать для обмена данными между
>
> > процессами  лучше?
>
>
> Йода ?

смысли?


 
Противный   (2011-03-04 01:02) [33]

Игорь Шевченко ©   (04.03.11 00:04) [31]

Смысли?!


 
Германн ©   (2011-03-04 03:22) [34]


>  Soulofangel   (04.03.11 00:02) [30]
>
> как думаете что мне использовать для обмена данными между
> процессами  лучше? FileMapping  или wm_copydata?
>

Сначала уточни у преподавателя задание.


 
И. Павел ©   (2011-03-04 08:02) [35]


> Soulofangel   (04.03.11 00:02) [30]
> как думаете что мне использовать для обмена данными между
> процессами  лучше? FileMapping  или wm_copydata?

Не нужно изобретать велосипеды. COM-сервер - вполне удобное и стандартное решение.

Единый интерфейс - это тот, который прописывают в руководстве прикладного программиста к программе, которая предоставляет COM-сервер. Т.е., как мне кажется, переключатель нужно сделать COM-объектом.


 
Soulofangel   (2011-03-04 09:59) [36]

спасибо так и сделаю


 
KilkennyCat ©   (2011-03-04 12:41) [37]

дико сомневаюсь, что сделаешь.


 
laby ©   (2011-03-10 12:35) [38]

Плохая постановка задачи - самому нужно доформализовывать. Насчет двух программ непонятно - какой между ними должен быть интерфейс? Спросите у преподавателя. Черный ящик - тут всё понятно. Это несколько входов и несколько выходов. Ящик в зависимости от своего внутреннего состояния и входов генерирует выходы.


 
laby ©   (2011-03-10 12:39) [39]

Либо одна программа - интерфейс задачи в человеческих понятиях, а вторая в понятиях конечного автомата


 
Soulofangel   (2011-03-16 14:06) [40]

я всё сделал всем спс:)



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.06.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.004 c
15-1294522629
двп
2011-01-09 00:37
2011.06.26
Система удаленного администрирования, потестить


4-1227677945
Саня
2008-11-26 08:39
2011.06.26
Перехват названий окон и приложений


4-1219157045
ganj
2008-08-19 18:44
2011.06.26
Переключение раскладки клавиатуры в консоли


2-1300882916
Sergey2
2011-03-23 15:21
2011.06.26
значение тега по имени его атрибута TWebBrowser


15-1299923817
Polevi
2011-03-12 12:56
2011.06.26
Solution explorer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский