Исследование и разработка способов измерения и мониторинга артериального давления тема диссертации и автореферата по ВАК РФ 05.11.17, кандидат технических наук Акинин, Владимир Владимирович

  • Акинин, Владимир Владимирович
  • кандидат технических науккандидат технических наук
  • 2006, Пенза
  • Специальность ВАК РФ05.11.17
  • Количество страниц 159
Акинин, Владимир Владимирович. Исследование и разработка способов измерения и мониторинга артериального давления: дис. кандидат технических наук: 05.11.17 - Приборы, системы и изделия медицинского назначения. Пенза. 2006. 159 с.

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

Введение.

Глава 1 Обзор существующих методов и средств измерения артериального давления.

1.1 Вводные замечания.

1.2 Историческая справка.

1.3 Особенности механизма кровотока в артерии.

1.4 Классификация способов измерения и мониторинга артериального давления.

1.5 Инвазивные методы измерения АД.

1.6 Осциллометрические методы измерения АД.

1.7 Аускультативный метод измерения АД.

1.8 Другие методы фиксации моментов компенсации систолического и диастолического значений АД.

1.9 Косвенные методы измерения АД.

1.10 Способы мониторинга АД.

1.11 Сравнительные оценки методов измерения АД.

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

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

Актуальность работы и состояние вопроса. Артериальное давление является важнейшим показателем работы сердечно-сосудистой системы. Приборы для его измерения (тонометры) являются одними из самых распространенных бытовых приборов медицинского назначения. Однако подавляющее большинство тонометров представляют собой незначительные вариации прибора, предложенного еще в начале прошлого века. Эти тонометры для получения достаточно точных результатов требуют наличия у измеряющего специальных навыков, к тому же люди, имеющие дефекты слуха не могут ими пользоваться. В настоящее время в продаже появились автоматические и полуавтоматические тонометры, изготавливаемые такими фирмами, как Omron, A&D Medical, Nissey, Microlife и т.д. Данные тонометры гораздо более удобны в использовании, однако в основе их работы также лежит метод определения АД, предложенный в середине XIX века, и с тех пор практически не изменившийся. В частности все они требуют для измерения полного пережатия артерии, что приводит к существенному нарушению гемодинамики артерии. Также к недостаткам подобных тонометров можно отнести большое время измерения (более минуты), что является критическим параметром в ситуациях, когда необходимо произвести измерение АД у большого количества людей. Кроме того, данные тонометры, как правило, имеют невысокую точность, особенно это относится к недорогим моделям.

Другой задачей, также относящейся к области измерения АД, является задача мониторинга АД. Как известно, значения АД не являются величиной постоянной, а колеблются с течением времени. Соответственно для диагностики отклонений АД от нормы может понадобиться отслеживание динамики изменения АД в течение некоторого временного промежутка. Зачастую для подобного мониторинга используют приборы, построенные на тех же принципах, что и описанные выше тонометры. Данные приборы с некоторой периодичностью, задаваемой таймером, измеряют АД и заносят его в память [1]. Однако полученные в результате такого «мониторинга» результаты имеют достаточно низкую точность, а сам процесс «мониторинга» создает существенный дискомфорт [2,3]. С другой стороны, существуют приборы, позволяющие фиксировать всю кривую изменения АД в полном объеме, однако как правило они либо имеют очень большие погрешности результатов, либо неудобны для бытового использования. Кроме того, подобные системы, как правило, очень дороги. Таким образом, в настоящее время проблема мониторинга АД имеет приемлемое решение только для очень узкой области - мониторинга АД в палатах интенсивной терапии. Задачу же бытового мониторинга АД можно считать практически нерешенной. При этом ее актуальность не только является огромной, но и постоянно возрастает: по различным оценкам в 2000 году гипертонией в той или иной форме страдали от 600 миллионов до 1 миллиарда человек, а к 2025 году количество страдающих гипертонией может возрасти до 1.5 миллиарда человек [4, 5,6].

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

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

1. Систематизация методов измерения АД. Она необходима для более полной и всесторонней оценки методов измерения АД и выявления их достоинств и недостатков.

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

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

4. Исследование возможности использования режима компрессии конечности для измерения АД. Использование режима компрессии заметно сокращает время измерения, а также существенно уменьшает нарушения гемодинамики, оказываемые тонометром в процессе измерения.

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

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

Структура и краткое содержание диссертации. Диссертация содержит введение, 4 главы, заключение и список использованных источников

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

Заключение диссертации по теме «Приборы, системы и изделия медицинского назначения», Акинин, Владимир Владимирович

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

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

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

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

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

Заключение

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

1. С. К. Кукушкин, Е. М. Маношкина, А. В. Лебедев, В. М. Шамарин //Суточное мониторирование артериального давления (учебное пособие для врачей) // Лечащий Врач, №09 1999.

2. Ю.В.Котовская, Ж.Д.Кобалава Суточное мониторирование артериального давления в клинической практике: не переоцениваем ли мы его значение? // Артериальная гипертензия : Том 10 №1 2004.

3. В.Н.Хирманов, Т.В.Тюрина, А.В.Гротова Метод доктора Н.С.Короткова в эпоху "техно". Методические и клинические аспекты "домашнего" мониторирования артериального давления // Артериальная гипертензия Том 11 №2 2005 г.

4. World Hypertension League bulletin 2005 // http://hsc.utoledo.edu/org/whl/pdf/WHDBooklet2005.pdf.

5. Kearney PM, Whelton M, Reynolds K, et al. Global burden of hypertension: analysis of worldwide data. Lancet 2005; 365:217-223.

6. Global Burden of Hypertension to Increase to 1 in 3 by 2025 //http://www.medscape.com/viewarticle/4989042

7. Harvey, William Harvey's Contribution // http://www.discoveriesinmedicine.com/General-Information-and-Biographies/Harvey-William.html.

8. The history of blood pressure measurement //http://www.medphys.ucl.ac.uk/teaching/undergrad/projects/2003/group03/history. html.

9. Carl Ludwig biography // http://en.wikipedia.org/wiki/CarlLudwig.

10. History of Pulse Oximetry in Neonatal Medicine Hay Neoreviews.2005; 6: 533538.11 http://www.makhaon.com/index.php?lng=ru&p=dict &euid=25001 &PHPSESSID=f2fl 6311806135fbd4437501 c73e9358.

11. Blood pressure measuring devices //http://www.discoveriesinmedicine.corn/Bar-Cod/Blood-Pressure-Measuring-Devices.html.

12. A. Roguin. Scipione Riva-Rocci and the men behind the mercury sphygmomanometer // International Journal of Clinical Practice Vol. 60 Issue 1 Page 73 January 2006.14 Кровяное давление //http://www.medicus.ru/cardiology/spec/?cont=article&artid=376

13. Claude Lenfant Гипертензия и ее последствия: состояние проблемы в мире // Артериальная гипертензия Том 11 №2 2005 г.16 100 лет аускультативному методу измерения артериального давления: к юбилею Н.С.Короткова Артериальная гипертензия, Том 11 №2 2005 г.

14. Lawrence R. Krakoff Ambulatory Blood Pressure Monitoring for Every Hypertensive Patient: It's About Time! // http://www.medscape.com/viewarticle/497723.

15. В. H. Тонков Учебник нормальной анатомии человека. JI.: Медгиз, 1962, 763с.

16. Бисярина В.П., Яковлев В.М. Кукса П.Я. Артериальные сосуды и возраст. АМН СССР. М: Медицина, 1986, 224 с.

17. S. Sharma Control of Arterial Blood Pressure // http://www.nda.ox.ac.uk/wfsa/html/u01/u01008.htm.

18. Patent Full-Text and Full-Page Image Databases // http://patft.uspto.gov/netahtml/PTO/search-bool.html.

19. B.A. Люсов, H.A. Волов, B.A. Кокорин. Проблемы и достижения в измерении артериального давления // Русский Медицинский журнал, 2003, т. 11, № 19(191), 1093-1096.

20. Методы измерения артериального давления // http://www.monitorad.ru/index.aspx?pg=3

21. Э. К. Шахов, А. П. Писарев, В. В. Акинин Классификация методов измерения артериального давления // Вычислительные системы и технологии обработки информации: Межвуз. сб. науч. тр. -Пенза: Инф.-изд. центр ПГУ, 2006. Вып. 6 (30). - С. 107-110.

22. Шахов Э.К. Разделение функций основной принцип структурного совершенствования измерительных преобразователей. В кн. Информационно-измерительная техника. Межвуз. сб. науч. тр. Вып. 8. Пенза, ППИ. 1978.

23. Орнатский П.П. Автоматические измерения и приборы. Киев: Вища школа, 1973, 552 с.

24. Attenuation in invasive blood pressure measurement systems // Ercole Br. J. Anaesth. 2006; 96: 560-562.

25. Савицкий H.H. Биофизические основы кровообращения и клинические методы изучения гемодинамики. М.: Медицина, 1974. - 311с.

26. Эман А.А. Биофизические основы измерения артериального давления. -Л., Медицина, 1983.

27. Приборы для измерения артериального давления // http://www.8a.ni/abc/l 159.php

28. Калакутский Л. И., Манелис Э. С. Аппаратура и методы клинического мониторинга: Учебное пособие . Самара: Самар. гос. аэрокосм, ун-т., 1999. -161 с.

29. Ордабаев, Б. Б., Искаков, К. М., Рысмендиев, А. Ж., Юлдашев., А. А. Неинвазивное безокклюзионное мониторирование давления крови // Здравоохранение Казахстана 1992.- №8.- С.29 - 30.

30. В. М. Пономаренко, Р. Г. Воронцов, Б. С. Бобров. Способы и приборы автоматического измерения артериального давления // Мед. техника.-1973.-№6.- С.36 42.34 de Dobbeleer G. Пат. США No 3118440,1964.

31. Ware R. W., Laegner Ch, J., Owens T. E., Немецкий пат., No 1302482, 1971, prior. USA.

32. Медицинская электронная аппаратура для здравоохранения: Пер. с англ. / Л.Кромвелл, М.Ардитти, Ф.Вейбелл и др.; Пер. под ред. Р.И.Утямышева. -М.: Радио и связь, 1981.

33. Clearc С. А. Патент Великобритании No 1227030, 1970.

34. Hersh; Lawrence Т. Automatic indirect non-invasive apparatus and method for determining diastolic blood pressure by calibrating an oscillation waveform // Пат. США №6517495

35. Nasiff; Roger E. Indirect continuous blood pressure method // Пат. США № 5111826

36. Nelson; Craig H. Method and apparatus for indirect blood pressure measurement // Пат. США № 4799492

37. M. Ю. Руденко, В. Б. Алексеев, С. А. Мащок, В.А. Зернов Биофизические явления в системе кровообращения при косвенном измерении артериального давления и анализ приборов для его измерения // "Медицинская техника" №5 1986 г. стр.26-35.

38. Hill L. On rest, sleep, and work and the concomitant changes in the circulation of the blood. Lancet. 1898;1:282-285.

39. О кровяном давлении // http://www.aandd.com.ua/DrAugustql6.htm

40. Evaluation of the Remler M2000 blood pressure recorder. Comparison with intraarterial blood pressure recordings both at hospital and at home // http://hyper.ahajournals.org/cgi/content/abstract/hypertensionaha;6/2/209.

41. R. J. O. Davies, N. E. Jenkins, J. R. Stradling. Effect of measuring ambulatory blood pressure on sleep and on blood pressure during sleep BMJ 1994 308: 820823.

42. Рогоза A.H. Методы неинвазивного измерения артериального давления// http://medlinks.ru/print.php?sid=8178.

43. Eoin O'Brien; Neil Atkins; Jan Staessen A Review of Ambulatory Blood Pressure Monitoring Devices I I http://hyper.ahajournals.Org/cgi/content/full/26/5/835.

44. Penaz J. Photoelectric Measurement of Blood Pressure, Volume, and Flow in the Finger; Digest of 10th International Conferention on Medical and Biological Engineering., 1973, p. 104.

45. Анализатор ритмов сердечно-сосудистой системы САКР // http://www.asvomed.ru/php/content.php?id=1022

46. Спироартериокардиоритмограф, Описание //http://www.int-edu.ru/object.php?ml=468&m2=2&id=798

47. Accuracy and precision of blood pressure determination with the Finapres: an overview using re-sampling statistics. Journal of human hypertension, 1998 Jun;12(6):403-9.

48. P. Shaltis, A. Reisner, H. Asada A hydrostatic pressure approach to cuffless blood pressure monitoring //http://web.mit.edu/pshaltis/www/pubs/embc2004cufflessbp.pdf.

49. Рогоза A.H. и др. Суточное мониторирование артериального давления при гипертонии (методические вопросы) // http://webmed.irkutsk.ru/doc/pdf/abpmmethod.pdf.

50. Pressman, G. L. et al., "A Transducer for the Continuous External Measurement of Arterial Blood Pressure", IEEE BME Trans, #10, Apr. 1963, pp. 73-81.

51. Писарев А.П. Моделирование взаимодействия объекта и средства измерения для совершенствования тонометров и термометров //диссертация на соискание уч. степени канд. техн. наук.

52. Бахвалов Н.С. Жидков Н.П. Кобельков Г.М. Численные методы: Учебник для вузов Изд. 4-е. Бином. Лаборатория знаний 2006, 636 с.

53. Фофанов П.Н Учебное пособие по механокардиографии // Военно-медицинская ордена Ленина Краснознаменная академия имени С.М.Кирова, Ленинград, 1977 г.

54. Рекомендации по диагностике, лечению и профилактике артериальной гипертензии у детей и подростков // http://www.cardiosite.ru/medical/recom-diagnoz.asp

55. С. J1. Кузнецов, Н. Н. Мушкамбаров, В. J1. Горячкина. Атлас по гистологии, цитологии и эмбриологии. М: Медицинское информационное агентство, 2002 г. 376 стр.60 http://www.omron-med.ru/Intellisense.htm

56. Шахов Э.К. Способ измерения артериального давления и устройство для его осуществления // Патент № 2048789, Бюлл. №33.- 1995.

57. Pressman G.L. Патент США №3219035, 1965.

58. Newgard, Peter М. Патент США No4423738, 1977

59. Пат. 2281687 Российская Федерация, МПК А61В 5/022. Способ мониторинга артериального давления / Э. К. Шахов, А. П. Писарев, В. В. Акинин. -заявл. 14.02.2005; опубл. 20.08.2006, Бюл. № 23.unit Unitl;interfaceuses

60. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, TeEngine, Series, ExtCtrls, TeeProcs, Chart, Unit2, ToolWin, ActnMan, ActnCtrls, XPStyleActnCtrls, ActnList, StdCtrls;type

61. Forml: TForml; ChildModel: TForm2;implementation {$R *.dfm}procedure TForml.N3Click(Sender: TObject); begin

62. Forml.Close; end; // end procedureprocedure TForml.N2Click(Sender: TObject);1. Var i:integer;begin

63. Forml.OpenDialogl.Execute thenbeginwith OpenDialogl.Files do for i := 0 to Count -1 do begin

64. CreateMDIChild(ExtractFileName(Strings1.),i); Forml.ListBoxl.Items. Add(ExtractFileName(Stringsi.)); end; end; // end if end; // end procedureprocedure TForml.CreateMDIChild(const Name: string; Nunvlnteger); begin

65. Forml.MDIChildren1.BringToFront;

66. Form 1.ActiveMDIChild as TForm2).PageControll.ActivePageIndex:=j; Break; end; // end if end; // end procedureprocedure TForml.N5Click(Sender: TObject);var i:integer;begin

67. For i:=Form 1 .MDIChildCount-1 downto 0 do Forml.MDIChildren1.Close; end;end. // end moduleunit Unit2;interfaceuses

68. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, TeEngine, Series, ExtCtrls, TeeProcs, Chart, ComCtrls, TeeFunci;type

69. Function MinValue(Data: array of Extended): ValCoord;

70. Function MaxValue(Data: array of Extended): ValCoord;

71. Function ReadValue(S:String): ResArr;procedure TabSheet2Show(Sender: TObject);procedure TabSheet3Show(Sender: TObject);private

72. Private declarations} public1. Public declarations} end;var

73. Form2: TForm2; implementation uses Unitl;$R *.dfm}procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); , var i:integer;beginfor i:=0 to Forml.ListBoxl.Items.Count-1 do if Caption = Forml.ListBoxl.Items1. then begin

74. Form 1 .ListBoxl .Items.Delete(i); Break; end; // end if Action:=caFree; end; // end procedureprocedure TForm2.FormCreate(Sender: TObject); var

75. TempArrayl, PartArray: ResArr; // массивы значений из файла, полный и частичный

76. TempArray2:ResArr;// Тут будет храниться нормализованный массив MaxValue, MinValue: ValCoord; // значения и координаты экстремумов участка кривой ТешрАггауЗ : array of array 1.2. of ValCoord; // массив всех значений экстремумов кривой

77. Form 1 .OpenDialogl .Files.StringsForm 1 .OpenDialogl .Tag.o" then begin

78. Series 1.Clear; // начинаем рисовать первый график1. Series2. Clear;1. Series3.Clear;1. Series4.Clear;1. Series5.Clear;1. Series6.Clear;

79. PageControll.ActivePageIndex:=0;

80. TempArray 1 :=ReadValue(Forml .OpenDialogl .Files.StringsForml .OpenDialogl .Tag.); for i:= 0 to High(TempArrayl)do ^ Series l.Add(TempArrayl1.);

81. SetLength(TempArray3, Length(TempArray 1)); for i:=0 to High(TempArrayl) do begin

82. For i:=l to High(TempArray3)-l do I begin

83. TempArray3i, 1 .Coord=TempArray3[i+1,1 ].Coord then inc(jmax) else beginifjmax>10 then begin

84. SetLength(Maxims,Length(Maxims)+1); MaximsHigh(Maxims). :=TempArray3 [i, 1 ] end; // end if.then jmax:=0; end; // end if.elseifTempArray3i,2.Coord=TempArray3[i+l,2].Coord then inc(jmin) > elsebeginifjmin>5 then begin

85. SetLength(Minims,Length(Minims)+1); MinimsHigh(Minims).:=TempArray3[i,2] end;//end if.then jmin:=0; end;// end if.else end; // end for

86. For i:=0 to High(Maxims) do I begin

87. Series2.AddXY(Maxims1.Coord,Maximsi.Value); // рисуем график Series6.AddXY(Maxims[i].Coord,Maxims[ij.Value); // рисуем график end;

88. For i:=0 to High(Minims) do begin

89. SetLength(Amplitudes,Length(Amplitudes)+1); AmplitudesHigh(Amplitudes).Value:=abs(Maxims1.Value-(Minims[j].Value+(Maxims[i].Coord-Minims[j].Coord)*(Minims[j+l].Value-Minims[j].Value)/(Minims[j+l].Coord-Minims[j].Coord)));

90. Series4.AddXY(Amplitudes1.Coord,Amplitudesi. Value); end;

91. SetLength(TempArray2,Length(TempArray 1));

92. TempArray21.:=(TempArray 1 i-2.+TempArrayl [i-l]+TempArrayl[i]+TempArrayl[i+l]+TempArrayl[i+2])/5-a2; // И вычитаем этот минимум нахрен

93. TempArray21.> Amplitudesl.Value*0.55 then Series5.AddXY(i,l) else Series5.AddXY(i,0)

94. Series5.AddXY(i,TempArray21.); end;end; // end if.then end; // end procedure

95. Function TForm2.MinValue(Data: array of Extended): ValCoord; var I: Integer; begin

96. Result. Value := DataLow(Data).; Result.Coord:=Low(Data); for I := Low(Data) + 1 to High(Data) do if Result. Value > Data1. then begin1. Result.Value := Data1.;1. Result.Coord:=i;end;end; // end function

97. Function TForm2.MaxValue(Data: array of Extended): ValCoord; var1. Integer; begin

98. Result. Value := DatafLow(Data).; Result.Coord:=Low(Data);for I := Low(Data) + 1 to High(Data) do if Result. Value < Data1. then begin1. Result.Value :=DataIJ;1. Result.CoordH;end;end; // end function

99. Function TForm2.ReadValue(S:String): ResArr; var MyFormat:TFormatSettings; // так, фигня F: TextFile;

100. TempString:String; // временная строка, в нее читаем строки из файла begin

101. My Format. Deci mal Separator:-.'; AssignFile(F,S); // открываем файл. Reset(F);1. While not EOF(F) do begin

102. SetLength(Result,Length(Result)+1); ReadLn(F,TempString);// читаем из файла. TempString:=Trim(TempString); if length(Copy(TempString, 1 ,Pos(' ',TempString)-l))>0 then

103. Chart2.LeftAxis.Maximum:=Chartl.LeftAxis.Maximum; Chart2.LeftAxis.Minimum:=Chartl.LeftAxis.Minimum; end; end;procedure TForm2.TabSheet3Show(Sender: TObject); begin1. not Chartl.Zoomed then begin

104. Chart3.BottomAxis.Maximum:=Chartl.BottomAxis.Maximum; end;end;end. // end module

105. Листинги основных модулей программы «виртуального тонометра»unit GMMain;interfaceuses

106. Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, TeEngine, Series, StdCtrls, TeeProcs, Chart, ExtCtrls, ComCtrls, Buttons, Menus, ToolWin, ImgList;type

107. ArPress,ArPr 1: Array 1. .6000. of real; implementationuses ComSight;$R *.DFM}1. Var

108. TopPress,BottomPress,AverT:Double; Press, Puis: Double;//Integer; Finish:Boolean;

109. Max,Min,Dif,D01 ,D02,Criter, CrMax, DMaxLow, DMaxHigh:Double; k,m,mm,u,Index:integer;

110. Max,IsMin, IsDifCount, IsCrMax, IsFirst:Boolean; T1 ,T2,T3 ,T4: Integer;

111. P1,P2,P3,P4,P5,P6,P7,P8,P9, P10, PI 1, PI 2, PI 3, PI 4, PI 5, PI 6,PI 7, PI 8, PI 9, P20, D1,D2,D3,D4, D5,

112. D6,D7,D8,D9, D10,D11,D12,D13,D14, D15,D16,D17,D18,D19, D20,D21,D22,D23,D24, D25, TTT, DAver,h,d, hi,dl,dlh,dlMin,dlMinTop, Pmax, TopPressCalk:Double; DifCount:byte;1. F:Text;

113. PulsFreq:Integer; TimerTic:Integer;

114. DPW, APress:array 1. 80. of double; Const PressResuIt:BooIean=FaIse; Var PredMin, MMin, AverDPW, TopPr, DeltaP:Double;procedure TfmMain.BitBtn4Click(Sender: TObject); begin

115. ArPress1.:= 0; //ArPulsi.:=0; end;

116. OpenDlg.InitialDir:-D:\PressureModel\PulsTonometr\TonFiles\TonF261201'; 1 If OpenDlg.Execute thenbegin

117. System.Assign(F,OpenDlg.FileName); Reset(F); end; i:=0;

118. While not EOF(F) do begin lnc(i);

119. Readln(F,Pr,Pu); Readln(F,Pr); Щ ArPress1.:=Pr;1. ArPuls1.:=Pu; end;1. ArSize:=i; end;procedure TfmMain.BitBtn3Click(Sender: TObject); begin

120. Sum,Prl, Pr2, Pr3,Pr4, differ:double;begin

121. Chart2.Series0.Clear; Chart2.Series[ 1 ].Clear;

122. Chart2.Series0.AddXY(l,10); //Это для того, чтобы оси абсциссI

123. For i:=l to 80 do DPW1.:=0;1. Criter:=-100;1. DMaxLow:=-100;1. DMaxHigh:=-100;1. CrMax:=-100;1. AverT:=0;1.Min:=False;1.Max:=False;u:=0;

124. Up.Caption:-'; lbDown.Caption:="; label8.Caption:="; DifCount:=4; ' Finish:=False;1. TopPress:=0;1. BottomPress:=0;1. Criter:=0;1.CrMax:=True;dlMinTop:=100;

125. Сглаживаем кривую давления в манжете путем скользящего усреднения 15 отсчетов } For mm:=l to ArSize -15 do begin Sum:=0;

126. For i:=m2+l to m3 do ArPrl1.:=ArPressi.-(Pr3-Pr2)/(m3-m2)*(i-m2)-ArPress[l];

127. For i:=m3+l to ArSize-15 do

128. ArPrl1.:=ArPressi.-(Pr4-Pr3)/(ArSize-15-m3)*(i-m3)-ArPress[l]; differ- (ArPrl[m2+l]- ArPrl[m2]); For i:=m2+l to m3 do ArPrl [i]:=ArPrl [i] -differ; differ:- (ArPrl[m3+l]- ArPrl[m3]); For i:=m3+l to ArSize-15 do ArPrl [i]:=ArPrl[i]- differ; //

129. For mm:=l to ArSize do BrandNewLast; Chart3.Series0.,Clear; For i:=l to ArSize-15 do Chart3.Series[0].AddXY(i, ArPrl 1.) end;procedure TfmMain.BrandNewLast; begin Press:=(ArPressmm.

130. StrToInt(EdReplace.text)/StrToFloat(edScale.Text))*StrToFloat(edScale.Text); D02:=Press; D01:= ArPrl mm.; If (D02o0) then begin

131. Chart 1. Series0. Add(D02);

132. DOloO then Chart 1.Series 1 .Add(D01);1. D1<0 then1. IsFirst thenbegin1.D01>Max then begin1. Max:=D01; k:=0;

133. Max:=False end else Inc(k); If(k>4)then IsFirst:=False; end;1. not IsFirst then begin IfDOKMin then begin Min:=D01; m:=0;

134. Min:=False end else Inc(m);1. (m>4) {and (Max-Min>0.6*Dif)} then begin

135. MMin:=Min; IsMin:=True; end;1.lsMin then IfD01>Maxthen begin1. Max:=D01; k:=0;1.Max:=Falseendelse1.c(k);1. k>5 thenbegin1. PredMin:=MMin;1.Max:=True; end;

136. Dif>10 then Dif:=0;} Max:=-100; Min:=1000;1 //If mm>100 then Chart2.Series0.AddXY(mm,Dif|t10);

137. В зависимости от выбранного числа периодов пульсовой волны (длины участка анализа) производится набор исходных данных амплитуды пульсовой волны, давления и моментов времени в точках отсчета}1. APressIndex. :=Press;

138. DPWIndex.:=Dif; Inc(Index);

139. Dif<0.3*D2 then exit; чтобы пропустить локальные экстремумы между основными Т4:=ТЗ;1. ТЗ:=Т2;1. Т2-Т1; Tl:=mm;

140. Поскольку экстремумы пульсовой волны найдены, устанавливаем начальные значения кит} к:=0; т:=0;1. тт>100 then} Chart2.Series0.AddXY(mm,Dif*10); If (DPW[4]oO) and (DifM).l) then begin AverT:=(Tl-T4)/3;

141. TTT:= (Sqr(Tl-T2 -AverT) + Sqr(T2-T3 -AverT) + Sqr(T3-T4 -AverT)); IfTTT < 50 then If not IsDifCount then begin

142. PulsFreq:=Round(3000/AverT); LbPu1s.Caption:=T^bc:'+ IntToStr(Pu1sFreq); IsDifCount:=True; end; end; end;end;end;end;procedure TfmMain.Button2Click(Sender: TObject);

143. Обычно они возникают при экстрасистолах}

144. DPW1.:= (DPWi+l.+ DPW[i+2])/2; For i:=3 to 60 do1. (DPW1.< 0.6* (DPWi+l.+ DPW[i+2])/2)and (DPW[i+2]oO) then DPW[i]:= (DPW[i+l]+ DPW[i+2])/2; }1. For i.-2 to 40 do > begin1. SumPDW:=0;1. DPW i+SumNum.o0 thent )

145. For j:=i to i+SumNum do SumPDW:=SumPDW+DPWj.; If SumPDW>MaxDPW then begin

146. MaxDPW -SumPDW; imax:=i+SumNum div 2; end; end;

147. DPW1.:= DPWi-l.; { For i:=l to 50 do If DPW[i]>1.2*DPW[imax] then DPW[i]:=0;}

148. Chart2.Series0.AddXY(i*60,DPW1.); label4.Caption:=IntToStr(Round(APress[imax])); Pmax:= APress[imax]; crHighPrMax:=-100;

149. Up. Caption :=Format('%3.2 f, TopPress.);

150. Dovvn.Caption:=Format('%3.2f,BottomPress.);

151. TopPressCalk:=Pmax+(Pmax-BottomPress);label8.Caption:= Format('%3.2f,TopPressCalk.);label 10.Caption:= Format('%d', Index.);end;end.

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