ВУЗ:
17
при этом можно определить по формуле
t
R
u
∆
=
/
2
, где
12
ttt
−
=
∆
. Про-
межуток
t
∆
в программе определяется, как время, в течение которого сиг-
нал с фотодиода остается по величине меньше некоторого порога. Порог
устанавливается программным путем по «осциллограмме» сигнала фото-
датчика. Кроме величины
t
∆
регистрируется также период колебаний, оп-
ределяемый как промежуток времени
T
между двумя последовательными
входами шарика в "световые ворота".
При программировании в среде Delphi, для определения временных
интервалов удобно использовать системную функцию Windows
GetTick-
Count
, которая возвращает число миллисекунд с начала текущего сеанса
Windows. Ниже приведен фрагмент программы для определения момента
1
t входа шарика в «световые ворота»:
……………………………………………….
isPeriod:=False; {
установка флага – переменной булевского типа,
позволяющей зафиксировать момент прохождения порога}
t:=0;
……………………………………………….
Tick:=GetTickCount;
repeat until (GetTickCount-Tick)>1; {1 – миллисекундная задержка}
inport(260,a) {
считывание показания датчика
}
if (a<=Level)and (not isPeriod) then {
условие входа шарика в «свето-
вые ворота»
}
begin
isPeriod:=True; {
порог пройден
}
t:=GetTickCount; {
регистрация момента
1
t прохождения порога
}
end;
……………………………………………….
Аналогично выглядит фрагмент программы, фиксирующий момент
2
t выхода шарика из «световых ворот». Для заполнения массивов перио-
дов и скоростей необходимо соответствующие фрагменты программы
вставить в цикл. Включенный в программный код цикл
repeat until
обес-
печивает задержку перед обращением к порту, необходимую для обработ-
ки сигнала АЦП.
2.3. Задания
1. Написать программу, обеспечивающую опрос АЦП и вывод на экран
монитора график зависимости сигнала фотодатчика от времени («осцил-
PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com
при этом можно определить по формуле u = 2 R / ∆ t , где ∆ t = t 2 − t1 . Про- межуток ∆ t в программе определяется, как время, в течение которого сиг- нал с фотодиода остается по величине меньше некоторого порога. Порог устанавливается программным путем по «осциллограмме» сигнала фото- датчика. Кроме величины ∆ t регистрируется также период колебаний, оп- ределяемый как промежуток времени T между двумя последовательными входами шарика в "световые ворота". При программировании в среде Delphi, для определения временных интервалов удобно использовать системную функцию Windows GetTick- Count, которая возвращает число миллисекунд с начала текущего сеанса Windows. Ниже приведен фрагмент программы для определения момента t1 входа шарика в «световые ворота»: ………………………………………………. isPeriod:=False; {установка флага – переменной булевского типа, позволяющей зафиксировать момент прохождения порога} t:=0; ………………………………………………. Tick:=GetTickCount; repeat until (GetTickCount-Tick)>1; {1 – миллисекундная задержка} inport(260,a) {считывание показания датчика} if (a<=Level)and (not isPeriod) then {условие входа шарика в «свето- вые ворота»} begin isPeriod:=True; {порог пройден} t:=GetTickCount; {регистрация момента t1 прохождения порога} end; ………………………………………………. Аналогично выглядит фрагмент программы, фиксирующий момент t 2 выхода шарика из «световых ворот». Для заполнения массивов перио- дов и скоростей необходимо соответствующие фрагменты программы вставить в цикл. Включенный в программный код цикл repeat until обес- печивает задержку перед обращением к порту, необходимую для обработ- ки сигнала АЦП. 2.3. Задания 1. Написать программу, обеспечивающую опрос АЦП и вывод на экран монитора график зависимости сигнала фотодатчика от времени («осцил- 17 PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com
Страницы
- « первая
- ‹ предыдущая
- …
- 16
- 17
- 18
- 19
- 20
- …
- следующая ›
- последняя »