Разработка и исследование информационно-вычислительной системы гироскопического инклинометра для диагностики и активного контроля пространственного положения ствола скважин тема диссертации и автореферата по ВАК РФ 05.11.14, кандидат технических наук Галкин, Дмитрий Викторович

  • Галкин, Дмитрий Викторович
  • кандидат технических науккандидат технических наук
  • 1999, Москва
  • Специальность ВАК РФ05.11.14
  • Количество страниц 189
Галкин, Дмитрий Викторович. Разработка и исследование информационно-вычислительной системы гироскопического инклинометра для диагностики и активного контроля пространственного положения ствола скважин: дис. кандидат технических наук: 05.11.14 - Технология приборостроения. Москва. 1999. 189 с.

Оглавление диссертации кандидат технических наук Галкин, Дмитрий Викторович

Введение

Глава 1. Построение информационно-вычислительной системы

(ИБС) и выбор ее составных частей

1.1. Анализ проблем современной инклинометрии

1.2. Способы построения инклинометрических измерительных систем и их классификация

1.3. Структурно-функциональное построение ИБС

1.3.1. Общая схема построения ИБС

1.3.2. Построение блока чувствительных элементов

1.3.3. Система преобразования и передачи информации

1.4. Циклограмма функционирования ИБС

1.5. Выбор аппаратурного обеспечения ИБС

Выводы

Глава 2. Разработка математической модели инклинометра

2.1. Расчетная система координат

2.2. Математическая модель инклинометра в режиме многоточечных измерениий

2.2.1. Матрица направляющих косинусов

2.2.2. Определение параметров ориентации скважины

2.3. Математическая модель инклинометра в режиме движения

2.3.1. Кинематические уравнения в углах поворота измерительного блока

2.3.2. Определение ориентации скважины через матрицу направляющих косинусов

2.3.3. Использование кватернионов и параметров Родрига-Гамильтона для определения элементов матрицы направляющих косинусов

Выводы

Глава 3. Исследование погрешности измерений инклинометра

3.1. Систематические погрешности чувствительных 80 элементов и их алгоритмическая компенсация

3.1.1. Погрешность акселерометров

3.1.2. Погрешности датчиков угловых скоростей

3.2. Исследование среднеквадратических погрешностей 84 измерений

3.2.1. Погрешности определения угла наклона скважины

3.2.2. Погрешность определения угла поворота инклинометра

3.2.3. Погрешность определения азимута

Выводы

Глава 4. Разработка программно-математического обеспечения 104 информационно-вычислительной системы инклинометра..

4.1. Общий алгоритм ПМО

4.2. Структурная схема построения программы-оболочки

4.3. Алгоритм управляющей программы

4.4. Алгоритм обрабатывающей программы

4.4.1. Определение зенитного угла

4.4.2. Определение азимута

4.4.3. Определение угла поворота инклинометра

4.5. Алгоритм численного расчета параметров ориентации скважины при движении измерительного блока

4.6. Алгоритм сервисной программы

Выводы

Глава 5. Экспериментальные исследования ИБС инклинометра

5.1. Цель исследований

5.2. Описание экспериментальной установки

5.3. Методика и результаты испытаний

Выводы

Заключение

Литература

Приложение № 1

Приложение №2

Рекомендованный список диссертаций по специальности «Технология приборостроения», 05.11.14 шифр ВАК

Введение диссертации (часть автореферата) на тему «Разработка и исследование информационно-вычислительной системы гироскопического инклинометра для диагностики и активного контроля пространственного положения ствола скважин»

Введение.

Непрерывный рост темпов разведки и добычи нефти и газа, усиление интенсивности эксплуатации уже найденных месторождений потребовали существенного повышения точности диагностики и активного контроля пространственного положения стволов скважин, расширения диапазона измерений, улучшения оперативности представления информации [1,2,3]. Это, в свою очередь, привело к необходимости создания новых, более совершенных поколений инклинометрических измерительных систем, с помощью которых осуществляется определение пространственного положения ствола скважины.

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

Разработкой таких систем занимается ряд отечественных (СКТБ нефтепромышленности и геофизики, НИИКА нефтегаз, НИИ геофизики, ВНИИ «Нефтепромгеофизика», ВИТР НПО «Геотехника», Томскнефтегеофизика) и зарубежных фирм (Оеозетсев, 8репу 8ип, вугосЫа) [4, 5, 6]. Однако отечественные инклинометры уступают зарубежным по техническим характеристикам, а зарубежные имеют чрезвычайно высокую стоимость.

В то же время анализ конструкций и принципов построения лучших зарубежных образцов инклинометров показал, что используя научно-технические достижения ведущих предприятий аэрокосмического комплекса таких как НИИ прикладной механики (г. Москва), Раменское ПКБ и АО «РПЗ», АООТ «МИЭА», Государственное предприятие «Ижевский механический завод», МГП «Момент» (С.-Петербург), МИП «Арас» (г. Арзамас), можно создавать инклинометры, конкурентоспособные на мировом рынке как по техническим характеристикам, так и по стоимости [7 ч-17]. Это одно из перспективных направлений конверсионной перестройки ВПК.

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

этой области, Российская Академия Наук взяла на себя их координацию (решение научной сессии по скважинной навигации, инклинометрии и автоматизации от 28.04.99 г.). Без такой теории невозможны оптимальное проектирование инклинометрических систем и правильная оценка их эксплуатационных возможностей.

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

Аппаратурно-функциональная реализация этой технологии в инклинометре осуществляется с помощью информационно-вычислительной системы (ИБС).

Целью настоящей диссертационной работы является решение следующих задач:

1. Исследование и разработка структурно-функционального построения информационно-вычислительной системы гироскопического инклинометра:

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

- разработка структурно-функциональной схемы преобразования и передачи информации с максимальной помехозащищенностью;

- формирование требований к аппаратурному обеспечению ИБС.

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

- для классического построения измерительного блока - на базе трех одноосных датчиков угловой скорости;

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

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

- для режима измерений в процессе движения измерительного

блока.

3. Разработка математической модели ошибок измерений инклинометра и исследование влияний на эти ошибки погрешности чувствительных элементов и диапазона измеряемых углов.

4. Разработка программно-математического обеспечения инклинометра, включающего в себя:

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

- расчетные алгоритмы и обрабатывающие программы, осуществляющие определение пространственной ориентации скважины по показаниям датчиков первичной информации;

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

5. Создание экспериментального образца информационно-вычислительной системы и проведение экспериментальных исследований с целью:

- подтверждения правильности структурно-функционального построения ИБС;

определения работоспособности созданных расчетных алгоритмов и программного обеспечения;

- проверки основных теоретических положений диссертации.

Диссертационная работа состоит из пяти глав.

В первой главе на основе анализа проблем технологии получения и обработки информации о пространственном положении скважин в процессе их строительства формулируются требования к техническим характеристикам инклинометрических измерительных систем. Исследуются способы построения инклинометрических систем. Предлагается их классификация.

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

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

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

Предлагается схема структурно-функционального построения ИБС, циклограмма ее работы, критерии и методы выбора ее аппаратурного обеспечения.

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

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

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

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

Математическая модель для определения углового положения скважины в режиме остановок разрабатывается для двух способов построения измерительного блока: на базе трех одноосных ДУС (классическая) и на базе одного трехстепенного гироскопа, работающего в режиме двухосного ДУС. Последний способ построения измерительного блока позволит минимизировать его наружный диаметр и улучшить динамические условия эксплуатации.

Измерения в процессе движения измерительного блока позволяют сократить время промера скважины и повысить оперативность представления информации.

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

В третьей главе диссертации исследуются точностные характеристики измерительной системы.

С этой целью разрабатывается математическая модель ошибок инклинометра, с помощью которой исследуются систематические и случайные составляющие ошибок.

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

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

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

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

В четвертой главе на основе созданных в диссертации математических моделей разрабатываются расчетные алгоритмы и программное обеспечение информационно-вычислительной системы.

Создается комплекс управляющих, обрабатывающих и сервисных программ, объединенных в общий алгоритм ПМО.

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

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

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

Расчетная схема алгоритма определения углов ориентации скважины в процессе движения измерительного блока разрабатывается на основе представления кинематических уравнений в кватернионной формы через параметры Родрига-Гамильтона.

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

Для взаимодействия программных модулей и формирования различных режимов работы ПМО разрабатывается специальная программа-оболочка.

Пятая глава диссертации посвящается экспериментальным исследованиям ИВС.

С этой целью создается автоматизированное рабочее место, в котором реализованы все аппаратурно-функциональные части ИВС: измерительный блок, система съема, преобразования и передачи информации, программно-математическое обеспечение.

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

Работа выполнялась на кафедре «Технология производства приборов и систем управления летательных аппаратов» «МАТИ»-Российского государственного технологического университета им. К,Э,Циолковского, а экспериментальные исследования проводились в лабораториях АООТ «МИЭА» в соответствии с договором о научно-техническом сотрудничестве.

Похожие диссертационные работы по специальности «Технология приборостроения», 05.11.14 шифр ВАК

Заключение диссертации по теме «Технология приборостроения», Галкин, Дмитрий Викторович

14. Основные результаты диссертационной работы были использованы в АООТ «МИЭА» при создании гироскопического инклинометра бесплатформенного типа.

ЗАКЛЮЧЕНИЕ

Список литературы диссертационного исследования кандидат технических наук Галкин, Дмитрий Викторович, 1999 год

ЛИТЕРАТУРА.

1.Рапин В.А. Проблемы и пути решения задач промыслово-геофизичееких исследований горизонтальных и круто наклонных скважин // Нефтяное хозяйство.- 1994.-№2.-с.11-16.

2. Чесноков В.А., Рапин В.А., Вержбицкий В.В., Беляков Н.В. Технология промыслово-геофизических исследований действующих горизонтальных скважин // Каротажник.-1995г.-Вып.№>15.-е. 76-81.

3. Исаченко В.Х. Инклинометрия скважин. - М.: Недра, 1987г.

4. Гироскоп G-2 высокой точности для буровых комплексов (фирма Sperry Sun, США) // Э.И. сер. Авиационные системы и приборы, ГОНТИ.-1992.-№4(987).-с.З-5.

5. Elektromagnetic MWD: Рекламный проспект фирмы Geoservices, Франция.

6. Инженерный каталог фирмы Eastman Christensen (США), 1992-1993.-е. 11-26.

7. Михайлов В.М. Состояние и перспективы развития гироскопических инклинометров // Каротажник.-1995.-№11.-с.11-18.

8. Шереметьевский H.H. Конверсия// Энергия.-1995.-№5.-с.2-7.

9. Галкин В.И., Измайлов Е.А.,Жилин В.Б., Суминов В.М., Галкин Д.В. Гироскопический инклинометр ГИД // Гироскопия и навигация.-1997.-№4.-с.26-33.

10. Асс Б.А., Антипов Е.Ф ., Жукова Н.М. Детали авиационных приборов. - М., Машиностроение, 1979.

П.Боднер В.А. Приборы первичной информации. - М.: Машиностроение, 1981.

12. Точность производства в машиностроении и приборостроении. Под Ред. А.Н.Гаврилова., М., Машиностроение, 1973.

13. Гаврилов А.Н. Технология авиационного приборостроения. - М., Машиностроение, 1981.

14. Харгман К., Лецкий Э., Шефер В. и др. Планирование эксперимента в исследовании технологических процессов. - М., Мир, 1977.

15. Делекторский Б.А., Мастяев Н.З., Орлов И.Н. Проектирование гироскопических Электродвигателей: - М., Машиностроение, 1968.

16. Никитин Е.А., Балашова A.A. Проектирование дифференцирующих и интегрирующих гироскопов и акселерометров. - М., Машиностроение, 1968.

17. Krykov S.P., Chesnokov G.I., Izmailov E.A., Anikeichev W.S., Smirnov A.A. Inertial accelerometers // The second soviet-chinese simposium of inertial technology, 9-15 october, 1991., Saint-Peterburg, 1992., p.p. 117-119.

18. Prozorov S.V., Redkin S.L., Tarakanov O.V., Gorshkov V.A. Dinamically tuned gyros for platform and strapdown INS // The second soviet-chinese simposium of inertial technology, 9-15 october, 1991., Saint-Peterburg, 1992., p.p. 103-107.

19. Жилинский A.B., Колосов О .С., Салов Е.А., Федоров Д.А., Цепляев Н.А. Некоторые проблемные вопросы инклинометрии // Вестник МЭИ.-1997.-№4.-с. 18-22.

20. Развитие механики гироскопических и инерциальных систем (Сборник статей. Посвящается академику А.Ю.Ишлинскому). -М., Наука, 1973.

21. Гироскопические системы (Проектирование гироскопических систем, в двух частях). Под. ред. проф. Д.С.Пельпора. - М., Высшая школа, 1977.

22. Heam Ed. How operators can improve perfomance of measurement -while-drilling systems/-«Oil and Gas j», 1984, vol 82, №44, p. 80-81, 84.

23. Second-generation MWD tool pases field tests-«Oil and Gas j»,1983, vol. 81,№8, p. 84-90.

24. Браславский Д.А., Логунов C.C., Пельпор Д.С. Авиационные приборы и автоматы. - М.: Машиностроение, 1978.

25. Лунц Я.Л. Ошибки гироскопических приборов. - М., Машиностроение, 1968.

26. Бромберг П.В., Михалев И.А., Никитин Е.А., Бауман В.А., Балашова А.А. Гироскопические приборы и системы // Под редакцией Д.С. Пельпора. - М.: Высшая школа, 1971.

27. Ривкин С.С. Теория гироскопических устройств. - Л., Судостроение, 1964.

28. Брозгуль Л.И. Динамически настраиваемые гироскопы.- М.: Машиностроение, 1989.

29. Брозгуль Л.И., Смирнов Е.Л. Вибрационные гироскопы. - М., Машиностроение, 1970.

30. Артюхов Е.А., Баркан М.В., Геркус А.А., Грибов В.М., Кабалинский Л.Н., Скачков Н.В., Тиль А.В., Тихонов Б.М. Гироскоп с магнитным подвесом ротора, А.С. №64775,1972.

31. Данилин В.П., Новиков Л.З., Орлов О.Ф., Тиль А.В., Харламов С.А. Гироскопические чувствительные элементы, с.73-99, в кн.: «Развитие механики гироскопических и инерциальных систем».-М.: Наука, 1973.

32. Суминов В.М., Галкин В.Н., Баранов П.Н., Куликов С.Н. Определение параметров статического дисбаланса ротора электромагнитного сферического гироскопа./ В научно-техническом сборнике Вопросы авиационной науки и техники», М., 1999, с. 77-81.

33. Мартыненко Ю.Г. Движение твердого тела в электрических и магнитных полях. - М., Наука, 1988.

34. A.C. №1827541 Измерительный блок инклинометра / В.И. Галкин, Е.А. Измайлов, A.A. Маслов - Б.И., №26,1993.

35. Lynch D.D., Matthews A., Varty G.T. Transfer of sensor technology from oil-drilling to space applications // 5th Saint Peterburg international conference of integrated navigation systems., may 25-27. 1998. Saint Peterburg, 1998, p.p. 27-36.

36: Krykov S.P., Efimov B.V., Bykov V.V., Chesnokov G.I. Lazer gyro wirh psendorandom dither noise-making // The second soviet-chinese simposium of inertial technology, 9-15 october, 1991., Saint-Peterburg, 1992., p.p. 141-142.

37. Состояние разработки и перспективы развития волоконно-оптических гироскопов, Обзор. -М.: ГОНТИ, 1990.

38. Шереметьев А.Г. Волоконно-оптический гироскоп. - М., Радио и связь, 1987.

39. Журавлев В.Ф., Климов Д.М. Волновой твердотельный гироскоп. - М., Наука, 1985.

40. Справочник по цифровой вычислительной технике (под редакцией акад. АН УССР Г.Е.Пухова),- Киев, Издательство «Техника», 1975.

41. Основы проектирования микроэлектронной аппаратуры. Под. ред. Б.Ф.Высоцкого. - М., Сов. Радио, 1978.

42. Суминов В.М., Галкин Д.В. Математическая модель метрологической системы гироскопического инклинометра // Научно-технический сборник «Стандартизация и унификация авиационной техники» М.: НИИСУ, 1997.-№2.-с.39-47.

43. Галкин Д.В., Маслов A.A. Измерение азимута гироскопическим инклинометром // Вестник МЭИ.-1998.-№4.-с.13-15.

44. Ишлинский А.Ю. Ориентация, гироскопы и инерциальная навигация .-М.: Наука, 1976.

45. Бромберг Ч.Ф. Системы инерциальной навигации. - М.: Наука. 1979.

46. Лукьянов Д.П., Мочалов A.B., Одинцов A.A., Вайсгант И.Б. Инерциальные навигационные системы морских объектов. - JL: Судостроение, 1989.

47. Бранец В.Н., Шмыглевский И.П. Введение в теорию бесплатформенных инерциальных систем.- М.: Наука,1992.

48. Бранец B.H., Шмыглевский И.П. Применение кватернионов в задачах ориентации твердого тела. - М.: Наука, 1973.

49. Лурье А.И. Аналитическая механика. - М.: Наука, 1960.

50. Губаренко С.И. Механика инерциальных навигационных систем (учебное пособие под редакцией Ю.Г.Мартыненко). - М., Издательство МЭИ, 1993.

51. Голубев В.Ф. Кинематические параметры твердого тела с одной неподвижной точкой. - М., ИПМ АНРФ, 1997.

52. Панов А.П. Математические основы теории инерциальной навигации. - Киев: Наукова думка, 1993.

53. Пельпор Д.С. Гироскопические системы, ч.1, 2. - М.: Высшая школа, 1971.

54. Галкин Д.В., Маслов A.A. Алгоритмическая компенсация систематических погрешностей в гироскопическом инклинометре «ГИД» /У Вестник МЭИ. - 1999. - № 4, 17-19 с.

55. Ригли У., Холлистер У., Деихард У. Теория, проектирование и испытания гироскопов. - М.: Мир, 1972.

56. Лебедев А.Н. Счетно-решающие устройства. - М.: ГНТИ, 1958.

57. Рабинович С.Г. Погрешности измерений. - Л.: Энергия, 1978.

58. Суминов В.М., Галкин Д.В., Маслов A.A. Математическая модель ошибок гироскопического инклинометра // Гироскопия и навигация. 1999. - №1. - с. 30-39.

59. Поляков А.Б., Круглов И.Ю. Программирование в среде Турбо Паскаль - М.: Издательство МАИ - А/о «Росвузнаука» - 1992.

60. Турбо Паскаль 7.0 - К.: Издательская группа BHV, 1998.

61. Фаронов В.В. Программирование на персональных ЭВМ в среде Турбо Паскаль. - М.: Издательство МГТУ. -1991.

62. Крейг Арнуш Borland С++ 5: Освой самостоятельно: Пер. с англ. - М.: Восточная книжная компания, 1997.

63. С++ Язык программирования. - М.: «Наука». -1991.

64. Страуструп. Б. Язык программирования С++ : Пер. с англ. М.Г. Пиголкина, В.А. Яницкого. - М.: «Радио и связь».-1991.

65. Джордейн.Р. Справочник программиста персональных компьютеров типа IBM PC, XT и AT: Пер. с англ. Н.В. Гайского. -М.: «Финансы и статистика». -1992.

66. Фигурнов. В.Э. IBM для пользователя. Издание 6-е дополненное и переработанное - М.: «Финансы и статистика». - 1995.

67. Жданюк Б.Ф. Основы статистической обработки траекторных измерений. - М., Сов. Радио, 1978.

68. Исаченко В.Х., Рапопорт В.О., Федорова С.Н. Математическое обеспечение системы контроля пространственного положения скважины при кустовом бурении. - В кн. Информационно-

измерительные системы для геофизических исследований скважин. Труды МИНК и ГП, 1984, вып. 188, с. 31-39.

69. Sidman R., Blanc J., Youngbiood В. Quadratic calculation improve interpretation of direction surveys.-«Oil and Gas j.», 1978, vol. 76, №4, p. 69, 70,72.

70. Румшицкий JI.3. Математическая обработка результатов эксперимента (справочное руководство) - М., Наука, 1971.

71. Корн Г., Корн Т. Справочник по математике (для научных работников и инженеров). - М., Наука, 1978.

72. Левшина Е.С., Новицкий П.В. Электрические измерения физических величин (Учебное пособие для Вузов). - Л., Энергоатомиздат, 1983.

ПРИЛОЖЕНИЕ 1. Текст программно-математического обеспечения, предназначенного для определения параметров инклинометра в режиме многоточечных измерений.

В настоящее ПМО входят подпрограммы реализующие:

-программу оболочку;

-алгоритм управляющей программы;

-алгоритм обрабатывающей программы в режиме многоточечных измерений (определение зенитного угла, азимута и угла поворота инклинометра);

- алгоритм сервисной программы.

{$N+}

program inclinometrGID;

uses crt, dos, modindt, libl_ ,lib2

TYPE

ProcType = procedure (ff:real; var aa,bb,cc:integer);

var

I,J,N :INTEGER;

К .-INTEGER; {разное кол-во параметров в константах для АК и Гир.} Code :INTEGER; {код перехода "Знач. зад. углов"-"параметры АК и Гир."}

Priznak ¡INTEGER; {для определения угла поворота} TI,NI,StartMode :WORD; T0,T 1 ,T2,T3,TINT :REAL; DATA:array[0..7] of REAL; Ans,ET,OVER,SIGN,adr,a,b,FL: BYTE; UAX,UAY,UAZ .-real; {сигналы с измерительной обмотки акселерометров (мВ)}

UTX,UTY,UTZ :real; {сигналы с термодатчика (мВ)} UWX,UWY :real; {сигналы с гироскопа} TX,TY,TZ :real; {температура (град.С) } DTX,DTY,DTZ :real; {приращения температуры (град.С) } GX,GY,GZ :real; {составляющие ускорений действующие по осям X,Y,Z(g)}

Q :real; {зенитный угол (град.,мин.,сек.} F :real; {угол поворота инклинометра (град.,мин.,сек.} al :real; {азимут}

UKX,UKY,UKZ,GTX,GTY,GTZ,BX,BY,BZ,UTXC,UTYC,UTZC,KTX,KTY,KTZ, EGX,EGY,EGZ,Min_a:REAL; {конст. гироскопа}

Kwx,Kwy,nO,mO,nl,ml,n2,m2,s,W,WX,WZ: REAL; {константы акселерометров}

xl,x3,x5 : integer;

w 1 ,w2,w3 ,w4,w5 ,w6 ,w7 ,w8 ,w9: integer; zl,z2,z3,z4,z5,z6,z7,z8,z9: INTEGER; {вводимые углы} ValCode : INTEGER; {код выхода из процедуры Val}

Key : CHAR; {ответ пользователя}

QuitChoice: WORD; {код выхода из меню}

QuitEdit : INTEGER; {код выхода из редакт.}

OldWinl, 01dWin2 : Win; {для сохр. старых хар-к окна} OldTxtAttrl, 01dTxtAttr2: TxtAttr; {для сохр. старых аттр. текста}

MenuMain : Menulnit : WinMenuInit: WinFiles : WinAgree :

Menu; Menu; Win; Win; Win;

{главы, меню} {исх. данные}

{файлы} {условия}

MenuJobl, MenuJob2 : Menu; {меню "Исх. данные", "Расчет"} WinMenuJobl, WinMenuJob2: ,Win; {окно меню "Испытания","Расчет"}

{индикация}

Menulnd : WinMenuInd: MenuVar : WinMenuVar:

Menu;

Win; Menu; Win;

{вид ИСПЫТ.}

WinMessl, WinCurr : WinChFile FON :

WinMess2 : Win; Win; Win;

Win; {окно для сообщений} {текущ. индик.} {окно выбора файла из катал.} {для 1-го окна, закраш. фон}

InitData : ARRAY [1..40] OF EditStr; {исх. данные} incll,incl2,incl3: Text; {файлы}

label 1,2,11,100,102,104,110, 111, 113,114,120,121,123,124, 200, 500, Quitl ;

CONST InitDataName : ARRAY [1 ..40] OF STRING [50] =

('Крутизна выходных характеристик : ось X =', 'акселерометров при Т = 30 градусов С : ось Y =',

: ось Ъ — \ 'Величина нулевого сигнала :

'при Т - 30 градусов С :

: осьХ = ', : ось У : ось Ъ = \ : осьХ = ', : осьУ = \ : ось Ъ — \ : ось X =', : осьУ = ', : осьХ = \ : ось X = : ocьY = ^ : ось Ъ = \ : осьХ = ', : ось У = ', : ocъZ-,,

Значение принимаемое О при малых величинах А = Крутизна датчика момента :ось X =',

[град./час]/шВ :ось У =

Корпусные систематические составляющие :ось X =', дрейфа гироскопа [град./час] :ось У =', Дрейф от осевого дисбалланса[град./час] :',

Величина погрешности базы установки

Базовое напряжение термодатчика при Т = 30 градусов С

Крутизна термодатчика

Температурный коэффициент крутизны

Дрейф от неравножесткости [град./час] :',

Квадратурные составляющие дрейфа :ось X =

[град./час] :ось Y =',

Широта местности [град.] :',

Скорость вращения земли [град./час] :',

Горизонтальная составл. скорости вращения Земли: Вертикальная составл. скорости вращения Земли:

ЗЕНИТНЫЙ УГОЛ градусы:',

минуты:', секунды:',

АЗИМУТ градусы:',

минуты секунды:',

УГОЛ ПОВОРОТА ИНКЛИНОМЕТРА градусы:',

минуты:', секунды:');

procedure Тор; {заголовок в процессе испытаний} begin TextColor(14);

Window( 1,1,80,3);TextBackGround( 1 );ClrScr;

GoToXY(l,l);

writeln;

write('': 10,'T,c',' ':2/АК1,мВ7 ':2,'АК2,мВ'); write(' ':2,'АКЗ,мВ',' ':2,ТР1,мВУ ':2,'ГР2,мВ'); writehC ':2,'ТД1,мВ',' ':2,'ТД2,мВ',' ,:2,'ТДЗ,мВ'); Windo w(1,4,80,25);TextBackGround( 1 );ClrScr; delay(lOOO) end;

procedure ClockIn(var IX:real); var H,Min,S,ms:Word; begin GetTime(H,Min,S,ms);

IX:-(H*60+Min)*60+S+ms/l 00 end;

procedure InpConst; {переприсваивание констант [1-19] - гироскоп; [20-31]

акселерометры; [32-40] - начальные углы}

begin

Val(InitData[l],UKX,VaiCode); Val(InitData[2],UKY,ValCode); Val(InitData[3],UKZ,ValCode); Val(InitData[4],GTX,ValCode); Val(InitData[5],GTY,ValCode); Val(InitData[6],GTZ,ValCode); Val(InitData[7],BX,ValCode); Val(InitData[8],BY,ValCode); Val(InitData[9],BZ,ValCode); Val(InitData[10],UTXC,ValCode); Val(InitData[ll],UTYC,ValCode);Val(InitData[12],UTZC,ValCode); Val(InitData[ 13],KTX, ValCode); Val(InitData[ 14],KTY, ValCode); Val(InitData[15],KTZ,ValCode); Val(InitData[16],EGX,ValCode); Val(InitData[17],EGY,ValCode); Val(InitData[18],EGZ,ValCode); Val(InitData[ 19],Min_a, ValCode);

Val(InitData[20],Kwx,ValCode); Val(InitData[21 ],Kwy, ValCode); Val(InitData[22],nO,ValCode);Val(InitData[23],mO,ValCode); Val(InitData[24],nl,ValCode); Val(InitData[25],ml, ValCode); VaI(InitData[26],n2,ValCode);Val(InitData[27],m2,ValCode); Val(InitData[28],s,ValCode); Val(InitData[29],W,ValCode); Val(InitData[30],WX,ValCode); Val(InitData[31 ], WZ,ValCode); Val(ImtData[32],z 1,ValCode); Val(InitData[33],z2,ValCode); Val(InitData[34],z3,ValCode); Val(InitData[35],z7,ValCode); Val(InitData[36],z8,ValCode); Val(InitData[37],z9,ValCode); Val(InitData[38],z4,ValCode); Val(InitData[39],z5,ValCode); Val(InitData[40],z6,ValCode); end;

Function rad_grad(va:real):real; begin

,rad_jjrad:=va* 180.0/pi; end;

{$F+}

Procedure vstav(f:real; var a,b,c:integer); var

z22,z44:real; begin

a:=trunc(f); z22:=(f-a)*60; b:=trunc(z22); z44:=(z22-b)*60; c:=round(z44); end; {$F-}

{ . -процедуры для акселерометра=: —г~}

PROCEDURE TEMP; begin

DTX:=(UTX-UTXC)/KTX; DTY:=(UTY-UTYC)/KTY; DTZ:=(UTZ-UTZC)/KTZ;

TX:=30+DTX; TY:=30+DTY; TZ:=30+DTZ;

GX:=((UAX/(UKX*(1+EGX*DTX)))-GTX)-SIN(BX); GY:=((UAY/(UKY*(1+EGY*DTY)))-GTY)-SIN(BY); GZ:=((UAZ/(UKZ*(1+EGZ*DTZ)))-GTZ)-SIN(BZ); end;

{ ■ ■ — процедура расчета зенитного угла .....- ■■ ■ ■■ ■■

PROCEDURE XX(vstav:ProcType); VAR

Zadan, Delta, Q0,Q1 :real; xl,x3,x5,zll,z33,z55:integer; label 1; begin

if abs(gx)<Min_a then gx:=Min_a; if abs(gy)<Min_a then gy:=0; if abs(gz)<Min_a then gz:=Min_a; q:=rad_grad(arctan(sqrt(sqr(gy)+sqr(gx))/gz)); if gz<0 then q:=q+180;

Zacian:=abs(zl)+abs(z2/60)+abs(z3/3600);(*3a4aHHoe из гр.мин.сек. в число*) Delta:=abs(abs(q)-abs(Zadan)); (*это ошибка*)

vstav(Delta,zll,z33,z55); (* теперь ошибку переводим в гр.мин.сек.*)

vstav(q,x 1 ,хЗ,х5);

{ вывод значения зенитного угла в файл} writeln(incl3,'зенитный угол:'); writeln(incl3 ,'Q -,xl:3,'град',х3:3,'мин',x5:3,'ceK');writeln(incl3,"); { на экран}

writeC ЗЕНИТНЫЙ УГОЛ |');

TextColor(0);write(zl:3,'град',z2:3,'мин',z3:3,'сек'),-TextColor(15);write(T); TextColor(0);write(xl:3,'град',х3:3,'мин',x5:3,'ceK');TextColor(15);write(',:l,'|'); TextColor(0);write(zl 1:3,'град',z33:3,'мин',z55:3,'ceK');TextColor(15);writeln;

writelnC---------------1-------------------1--------------------1--------------------');

wl:=xl; w2:=x3; w3:=x5;

{---------------условия для определения угла поворота-------------}

Q0:=xl; Ql:=x3;

if (abs(Q0)=0) and (abs(Ql)<6) then GOTO 1 else begin

PRIZNAK:=1; F:=rad_grad(arctan(gy/gx)); if (gy>0) and (gx>0) then F:-(F); if (gy>0) and (gx<0) then F:=(F)+180; if (gy<0) and (gx<0) then F:=(F)+180; if (gy<0) and (gx>0) then F:=(F)+360;

Zadan:=abs(z4)+abs(z5/60)+abs(z6/3600);(*зaдaннoe из гр.мин.сек. в число*) Delta:=abs(abs(F)-abs(Zadan)); (*это ошибка*)

vstav(Delta,zl I,z33,z55); (* теперь ошибку переводим в гр.мин.сек.*)

vstav(F,xl,x3,x5);

{ вывод угла поворота в файл }

writeln(incl3/угол поворота инклинометра:');

writeln(incl3,'F -,xl:3,'градусов',х3:3,'минут',x5:3,'ceKyH«');writeln(incI3,"); {на экран}

writeO УГОЛ ПОВОРОТА

TextColor(0);write(z4:3,'град',z5:3,'мин',z6:3,'ceK');TextColor(15);write(T); TextColor(0);write(xl:3,'ipaA^x3:3,,MHH',x5:3,,ceK');TextColor(15);write('':l,,i'); TextColor(0);write(zll:3,'град',z33:3,'мин',z55:3,'ceK');TextColor(15);writeln; TextColor(15);

writelnC ИНКЛИНОМЕТРА | | | '); wriieln('---------------1-------------------1--------------------1--------------------');

w4:=xl; w5:=x3; w6:=x5; end;

1:

END;

PROCEDURE Dl; {--—~ процедура для гироскопа " =}

VAR

S WX1 ,SWY 1 ,WWX1, W WY1, WX1 ,WY 1 ,WZ 1,Delta,ZZrreal; zl I,z33,z55:integer; SL,CL,WZZ:real; Label 2; begin

SWX1 ::::::UWX*Kwx,• SWYl:=UWY*Kwy;

WWX1 :=nO-(n 1 *GX)-(m 1 *GY)-(n2*2*GX*GZ)+(2*m2*GY*GZ); WWY1 :=mO-(nl *GY)+(ml *GX)+(n2*2*GY*GZ)-(2*m2*GX*GZ);

WX1:=SWX1-WWX1;

WY1:=SWY1-WWY1; {—}

F :=F*pi/180; al:=al*pi/180; Q :=Q*pi/180;

WZZ:=((-1)*WX1*GX - WY1*GY - WZ)/GZ;

WZ1 :=WZZ/abs( WZZ)*sqrt(abs(sqr( W)-sqr( WX 1 )-sqr( WY 1 )));

al:=rad_grad(arctan((WXl*GY-WYl*GX)/(WXl*GX*GZ+WYl*GY*GZ-

WZ1 *(sqr(GX)+sqr(GY))))); {------}

SL:=(WX1*GY-WY1*GX)AVX;

CL:-((WX 1 *GX+WY 1 *GY)*GZ-WZ 1 *(sqr(GX)+sqr(GY)))/WX; writeln(incl3,'проверка знака SIN и COS*,' SIN =',SL,' COS =',CL); if (SL>0) and (CL>0) then al:=al; if (SL>0) and (CL<0) then al:=al+180; if (SL<0) and (CL<0) then al:=al+180; if (SL<0) and (CL>0) then al:=al+360;

vstav(al,x 1 ,x3,x5);

ZZ:=abs(z7)+abs(z8/60)+abs(z9/3600);(*3aflaHHoe из гр.мин.сек. в число*)

Delta:=abs(abs(al)-abs(ZZ)); (*это ошибка*)

vstav(Delta,zl 1 ,z33,z55); (* теперь ошибку переводим в гр.мин.сек.*)

{------------вывод азимута-----------------}

writeln(incl3,'азимут');

writeln(incl3,'al-,xl:3,'градусов',х3:3,''минут', x5:3,'ceKyHa');writeln(incl3,"); write(* АЗИМУТ |');

TextColor(0);write(z7:3,'град',z8:3,'мин',z9:3,'ceK');TextColor(15);write('|'); TextColor(0);write(xl:3,'град',х3:3,'мин',x5:3,'ceK');TextColor(15);write(":l,'('); TextColor(0);write(zl 1:3,'град',z33:3,'мин',z55:3,'ceK');TextColor(15);writeln; TextColor(15);

writelnC---------------1-------------------1--------------------1---------—------');

w7:=xl; w8:=x3; w9:=x5;

. IF PRIZNAK=1 THEN GoTo 2 ELSE begin

F:=rad_grad(arctan(WYl/WXl)); if (WX1X)) and (WYKO) then F:=F; if (WX1<0) and (WYKO) then F:=F+180; if (WX1<0) and (WY1>0) then F:=F+180; if (WX1>0) and (WY1>0) then F:=F+360;

vstav(F,xl,x3,x5); (*измеренное в гр.мин.сек.*)

ZZ:=abs(z4)+abs(z5/60)+abs(z6/3600);(*3aflaHHoe из гр.мин.сек. в число*) Delta:=abs(abs(F)-abs(ZZ)); (*это ошибка*)

vstav(Delta,zl I,z33,z55); (* теперь ошибку переводим в гр.мин.сек.*)

{------------вывод угла поворота инклинометра--------------------}

vmteln(incl3,'ynwi поворота инклинометра'); writeln(incl3,'F - ,xl :3,'градусов',х3:3,'минут',х5:3,'секунд'); writeC УГОЛ ПОВОРОТА |');

TextColor(0);write(z4:3,'град',z5:3,'мин',z6:3,'ceK,);TextColor(15);write('|'); TextColor(0);write(xl:3,'град',х3:3,'мин',x5:3,'ceK');TextColor(15);write('':l,'|'); TextColor(0);write(zll:3,'i^afl'^33:3,'MHH',z55:3,'ceK');TextColor(15);writeln; TextColor(15);

writelnC ИНКЛИНОМЕТРА | | | ');

writelnC---------------!-;-------------1—----------------i------------------');

w4:=xl; w5:=x3; w6:=x5; end;

2:

end;

(*-------------------------------Основная программа-----------------------*)

BEGIN

assign(mcl2,'c:\pascal. 701\bin\INCLЛЛlA.NEW\isx.diш'); reset(incl2);

it)/

Code:=0;

FOR I:=l TO 40 DO readln(incl2,InitData[I]); TxtCursor(0); close (incl2);

assign(incl2,'c:\pascal.701\bin\INCLJURA.NEW\isx.dim'); rewrite(incl2);

WITH MenuMain DO BEGIN

Itemfl] :=' Параметры AK и Гир.';

Item[2j :=' Испытания

Item[3] :=' Расчет

Item[4] :=' Выход ';

FOR I 1 TO 4 DO Access[I] := True;

FirstCh := 2;

END;

WITHWinCurrDO BEGIN

Xl:=l; Yl:=l; X2:=B0; Y2:=25; END;

WITH MenuJobl DO BEGIN

Item[l] :=1 Для акселерометров*; Item[2}' Для гироскопа '; Access[l] :—True; Access[2] := True; FirstCh 1; END;

WITH WinMenuJobl DO BEGIN

XI := 10; Y1 := 3; X2 := 32; Y2 := 6; END;

WITH MenuJob2 DO BEGIN

Item[l] :=' Значения заданных углов'; Item[2] := 'Значения измеренных углов'; Access[l] := True; Access[2] := True; FirstCh 1; END;

WITH WinMenuJob2 DO BEGIN

XI := 40; Y1 := 3; X2 := 67; Y2 := 6; END;

100: {Главное меню:}

Window (1, 1,80,25); TextBackGround(0); TextColor(7); ClrScr; FOR I :=1 TO 24 DO

FOR J1 TO 80 DO Write ('-*); 102: Border (1,1,80,24);

WITH WinMessl DO BEGIN

XI := 23; Y1 := 8; X2 := 57; Y2 := 20; END;

WITHFONdo begin

xl:=l; yl:=l; x2:=80; y2:=25; end;

SaveTxtAttr (OldWinl, OldTxtAttrl); •MakeTxtWinl (FON,9,0,"); MakeTxtWinl (WinMessl, 0,0,"); WriteLn; TextColor(12);

WriteLn (' ПРОГРАММА ИСПЫТАНИЙ '); WriteLn (' ИНКЛИНОМЕТРИЧЕСКОЙ СИСТЕМЫ ГИД'); TextColor (15);

Writeln; Writeln;Writeln;Writeln;Writeln;Writeln; Writeln (' Для продолжения '); WriteLn (' нажмите любую клавишу '); key := ReadKey; CloseTxtWinl (WinMessl); CloseTxtWinl (FON); RestoreTxtAttr (OldWinl, OldTxtAttrl);

Window (2,2,79,2); TextBackGround(7); TextColor(0); ClrScr;

104: Window (6,2,78,2);

Choice (MenuMain, 4,0,7,15,6, Horiz, QuitChoice); Window (1,1,80,25); TextBackGround(O); TextColor(7); IF Hi(QuitChoice) = 0 THEN BEGIN MenuMain.FirstCh := 3; GOTO 104; END; {Esc}

IF Lo(QuitChoice) = 1 THEN GOTO 110; {константы} IF Lo(QuitChoice) = 2 THEN GOTO 1; {испыт.} IF Lo(QuitChoice) = 3 THEN GOTO 120; {расчет} IF Lo(QuitChoice) = 4 THEN GOTO 500; {выход}

110: { "Константы" }

SaveTxtAttr (OldWinl, OldTxtAttrl); MakeTxtWinl (WinMenuJobl, 0,7,"); 111: Choice (MenuJobl, 2,0,7,6,7, Vert, QuitChoice); SaveTxtAttr (OldWin2, QldTxtAttr2); IF Hi (QuitChoice) = 0 THEN {Esc} BEGIN

CloseTxtWinl (WinMenuJobl);

RestoreTxtAttr (OldWinl, OldTxtAttrl); GoTo 104; END;

IF Lo (QuitChoice) = 1 then BEGIN J:=0; K:=19 ; GoTo 113; END; IF Lo (QuitChoice) = 2 then BEGIN J:=19; K:=19-7; GoTo 113; END;

113: Window (1,1,80,25); GotoXY (1,25); TextColor(2); TextBackGround(0);

Write (' ', Chr(25),' ', Chr(24),' Backspace Del -очист. Enter -сохранить Esc -выход');

WITH WinAgree DO BEGIN

Xl:=3; Yl:=3; X2:=75; Y2:=23; END;

MakeTxtWinl (WinAgree, 11,1, "); FOR I :=1 TO К DO JBEGIN GotoXY (1,1);

TextColor (11); Write ( ",InitDataName[I+J]); TextColor (14); Write ( '', InitData[I+J]); END;

TextColor (14);

TxtCursor(l);

I:=l;

114: EditTxtl (InitData[I+J], 1,50,10, QuitEdit); GotoXY (50,1); Write (InitData[I+Jl); IF (QuitEdit = 0) OR (QuitEdit = 1) THEN BEGIN

CloseTxtWinl (WinAgree);

Window (1,1,80, 25); GotoXY (1,25); TextBackGround(0);

ClrEol;

TxtCursor(0);

RestoreTxtAttr (01dWin2,01dTxtAttr2); END;

CASE QuitEdit OF 0: {Esc}

if Code=0 then GOTO 111 else GoTo 121; 1: {Enter}

ifCode=0 then GoTo 111 else GOTO 121; 3: {Up}

BEGIN I:=I-1;

IF I < 1 THEN I := K; IF I > К THEN I := 1; GOTO 114; END;

4: {Dn}

BEGIN

I :=I+1;

IF I > К THEN I := 1; IF I < 1 THEN I := K; GOTO 114; END; END; {CASE} GOTO 114;

120: {меню "расчет" : "истинные углы", "начало расчета"} SaveTxtAttr (OldWinl, OldTxtAttrl); MakeTxtWinl (WinMenuJob2,0,7, "); 121: Code:=0;

Choice (MenuJob2,2,0,7,6 ,7, Vert, QuitChoice); SaveTxtAttr (01dWin2,01dTxtAttr2); IF Hi (QuitChoice) = 0 THEN {Esc} BEGIN

CloseTxtWinl (WinMenuJob2); RestoreTxtAttr (OldWinl, OldTxtAttrl); GoTo 104; END;

IF Lo (QuitChoice) = 1 then begin k:=9; j:=31; Code:=l; GoTo 113; end; IF Lo (QuitChoice) = 2 then GoTo 200;

1: {испытания}

SaveTxtAttr (OldWinl, OldTxtAttrl); OpenTxtWinl (WinCurr); 11: assign(incl 1,'c:\pascal.70 l\bin\INCLJURA.NEW\outpl .dim'); rewrite(incll);

TextColor( 15);TextBackGround( 1 );CirScr; GoToXY(10,10);

\угйе('Измерительньш интервал, с :'); readln(TI);writeln;

write(' ':9,'Число измерений',' ':10,':');

readln(NI);

writeln(incl 1 ,ni:3);

Top;

modeport; Clockln(TO); for I:=0 to NT-1 do begm

T1 :=T0+(I+1)*TI;

ClockIn(T2);

while T1>T2 do begin

write(chr(13)); TextColor(10); write((T2-T0):6:2,'c'); ClockIn(T2) end; DelLine;

(* Съем данных *) TextColor(15); if Т2>Т1+0.1 then begin

writeln;TextColor( 10); write('15,'Измерительный интервал'); writeln(' меньше времени измерения'); Sound(100);delay(5000);Nosound; TextColor(l); GoTo 2 end;

writeC ':1,T2-T0:5:0); for J:=0 to 7 do begin

adr:=$80+(J SHI 4); com(adr);

adr:=$00+(J SHI 4); com(adr);

adr:=$80+(J SHL 4); com(adr); Clockln(TINT); repeat readfl(FL);

ET:=FLand 1;

ClockIn(T3);

if T3-TINT>~1 then begin writelnC Нет запуска'); delay(lOOO); goto 2

end

until ET=0; ClockIn(TINT); repeat readfl(FL);

ET:=FL and 1;

ClockIn(T3);

if Т3-Т1№>=1 then begin

writelnC Вольтметр не готов');

delay(lOOO);

goto 2

end

until ET=1; OVER:=FL and 2; if OVER=0 then begin

write(' 'в; -'); {Data[J]:=0;} end else begin delay(10); readab(a,b); sign:=FL AND 4; if sign=0 then DATA[J]:=(a AND $f)+10*((a SHR 4)AND $f)

+100*(b AND $f)+1000*((b SHR 4) AND $f) else

DATA[J]:=(((9-(a AND $f)) AND $f) +((9-(a SHR 4)) AND $f)*10 +((9-(b AND $f)) AND $f)* 100 +((9-(b SHR 4) AND $f))* 1000)*(-1); writeC':2,(DATA[J]/10):6:1); write(incll,":2,(data[j]/10):6:l); end;

if KeyPressed then GoTo 2;

end; writeln; writeln(incll) end; 2: close(incll);

, writeln;writeln;writeln;TextColor(10);

writeln('': 15,'Выберите продолжение: 0 - выход в меню;'); write(' ':38,'l - повторить '); readln(Ans); if Ans=l then GoTo 11 else begin

CloseTxtWinl(WinCurr); RestoreTxtAttr (OldWinl, OldTxtAttrl); GoTo 104; end;

ClrScr;

200: {----------------расчет----------------}

FOR I:=l TO 40 DO WRITELN(incl2,InitData[I]); {<— на случай сбоя}

assign(incll,'c:\pascal.70 l\bin\incljura.new\outpl.dim'); reset(incll);

assign(incl3,'c:\pascal.701\bin\incljura.new\outp2.dim'); rewrite(incl3); OpenTxtWinl (WinCurr); Window(l,l,80,25);TextBackGround(7);ClrScr; InpConst;

UAX:K);UAY:=0;UAZ:=0;UWX:=0;UWY:=0;UTX:=0;UTY:=0;UTZ:=0; readln(incll,n); PRIZNAK:=0; for i:=l to n do begin forj:=0to7do begin

read(incll,Data[j]); end;

UAX:=U AX+Data [0]; UAY :=UA Y+Data [1 ]; UAZ:=UAZ+Data[2]; UWX:=UWX+Data[3]; UWY:=UWY+Data[4]; UTX:=UTX+Data[5];

UTY :=UTY+Data[6]; UTZ:=UTZ+Data[7]; end;

UAX:=UAX/n; UAY:=UAY/n; UAZ:=UAZ/n*(-l); UWX:=UWX/n; UWY:=UWY/n; UTX:=UTX/n; UTY:=UTY/n; UTZ:=UTZ/n; UAY:=1; UAZ:=480; UTX:=450; UTY:=450; UTZ:=450; write(UAX:8:3,",UAY:8:3,'',UAZ:8:3);

TextColor(6);writeln;writeIn(":22,' ТАБЛИЦА РЕЗУЛЬТАТОВ ИЗМЕРЕНИЙ ');

writeln(":15,'6bmo осреднено следующее количество измерений :

With WinMessl DO BEGIN

Xl:=l; Yl:=5; X2:=80; Y2:=8; END;

With WinMess2 DO BEGIN

Xl:=l; Yl:=7; X2:=80; Y2:=20; END;

MakeTxtWinl (WinMessl, 15,6,"); TextColor(15);

WritelnC 1 ЗАДАНО | ИЗМЕРЕНО | ОШИБКА ');

MakeTxtWinl (WinMess2,15,6,"); TextColor(15);

TEMP;

XX(vstav);

Dl;

GoToXY(l,20);

TextColor( 14);writeln;writeln;writeln;

writeln(": 19,'Для выхода в меню нажмите любую клавишу'); Key:=ReadKey;

RestoreTxtAttr (01dWin2,01dTxtAttr2);

CloseTxtWin l(WinCurr);

close(incll);

close(incl3);

GoTo 121;

500:

FOR I:=l TO 40 DO WRITELN(incl2,InitData[I]);

close(incl2);

ChScr;

end.

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.