מערכת לביצוע בדיקות רפואיות

Post on 04-Jan-2016

75 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

מערכת לביצוע בדיקות רפואיות. מנחים: ירון חונן, יוג'ין קוניוחוב סטודנטים: אנה אופליאנד, סרגיי יוסופוב. כללי. - PowerPoint PPT Presentation

TRANSCRIPT

לביצוע מערכתרפואיות בדיקות

' מנחים: , קוניוחוב ין יוג חונן ירון

, יוסופוב: סרגיי אופליאנד אנה סטודנטים

כללימסוגלת תהיה אשר מערכת פיתוח היתה הפרויקט של העיקרית המטרה

, להנדסה בפקולטה פותח אשר רפואיות לבדיקות מכשיר עם להתתממשק , " , וכך- יעילה נוחה בצורה ל הנ מהמכשיר הנתונים את ולהציג לקרוא רפואית ביו

. שונים ממכשירים האלא לנתונים לגשת ניתן שיהיה

גמישות תאפשר אשר מערכת לפתח היה עבורינו החשובים הקריטריונים כאחד , - בעצם. זו שונות קונפיגורציות הרבה להיות יכולות רפואי ביו למכשיר מירבית . לנו היה שונות בדיקות לביצוע שונים חיישנים הרכבת המאפשרת פלטפורמה

ולפתח לכך להתייחס אשר מערכת חשוב החיישנים וכמות סוג את תגביל לא אשר . בדיקות מבצעים בעזרתם

מטרות מכשיר בין תקשורת פרוטוקול להגדיר עלינו היה הפרויקט מי כחלק

גם- . עלינו היה בדיקה נתוני לקרוא מנסה אשר למכשיר רפואי ביו. המכשירים בין המועברות מידע חבילות של מבנה להגדיר

בנינו אלא עצמו המכשיר עם עבדנו לא הפרויקט על העבודה במהלך . שלו סימולטור

הפעלה מערכת מריץ אשר לטאבלט האפליקציה , Androidפיתוח , , - אותם להציג רפואי הביו מהמכשיר נתונים לקרוא מטרתה אשר

ב אותם .web serverולשמור פיתוחweb application ותציג הבדיקה נתוני את תשמור אשר

למשתמשים אותם

מערכת של כללי תיאור

סימולטורprivate void startServer() throws IOException{

UUID uuid = new UUID("1101", true);

String connectionString = "btspp://localhost:" + uuid +";name=Sample SPP Server";

StreamConnectionNotifier streamConnNotifier = (StreamConnectionNotifier)Connector.open( connectionString );

StreamConnection connection=streamConnNotifier.acceptAndOpen();

OutputStream outStream=connection.openOutputStream();

PrintWriter pWriter=new PrintWriter(new OutputStreamWriter(outStream),true);

ArrayList<String> arr = getXMLMessages(numberOfValues,numberOfDiscreteChannels, numberOfContinuousChannels);

for(String s : arr){

startToSendNewPackage = (new Date()).getTime();

System.out.println("Package #"+counter+" Size "+s.getBytes().length+ " was sent at " +startToSendNewPackage + ":"+ s);

pWriter.write(s);

counter++;

myWait(waitForMilliseconds);

}

pWriter.close();

streamConnNotifier.close();

}

Str ings

מידע חבילות - שני משדר רפואית ביו להנדסה בפקולטה שפותח הרפואי המכשיר

. מידע של סוגים - ובכל רפואי מכשיר בתוך עיבוד שעבר המידע מחושבים נתונים

. ערוץ בכל בודד ערך יש מידע חבילת - יש חבילה בכל עיבוד עברו שלא דגימות של רצף רציפים נתונים

. ערוץ בכל ערכים מספר

, כחלק משותפת שפה תהיה במערכת שונים שלרכיבים מנת עלבין נתונים להעברת אחיד פורמט להגדיר עלינו היה מהפרויקט

. במערכת שונים חלקים

מידע חבילות: הבאים העיקרונות שני על לשמור צריכים היינו

, כמות לאוסיף כלומר חבילה גודל על metadataלשמור . גודל על שמירת החבילות גודל לנפח לא מנת על הדרוש מינימלי

למהירות פיזיות מגבלות קיימות כי חשוב אילוץ הוא קטן חבילהדרך נתונים .Bluetoothהעברת

. המידע של ומהיר נוח ניתוח לאפשר

TechnionBioMedicalAppאשר מערכת לפתח היה עבורינו החשובים הקריטריונים כאחד . הרבה להיות יכולות הרפואי למכשיר מירבית גמישות תאפשר , הרכבת המאפשרת פלטפורמה בעצם זו שונות קונפיגורציות

. לכך להתייחס חשוב לנו היה שונות בדיקות וביצועה שונים חיישניםאשר החיישנים וכמות סוג את תגביל לא אשר אפליקציה ולפתח

. בדיקות מבצעים בעזרתםלהרכבי עצמה את להתאים מאפשרת אשר אפליקציה פיתחנו לכן

. רפואי מכשיר של שונים חיישניםאפשרות למשתמש לספק היתה חשובה פחות לא אחרת משימה

. לו שנוחה בצורה הבדיקות תצוגת מסך את להגדיר

הגדרות ומסך ראשי מסך

Physical Channelsבשם ישות בנינו מידע בחבילת ערך כל לתאר מנת physical channelעל

דם לחץ

Physical Channels

Schemaבמערכת הוגדרו החומרה של הנוכחית בקונפיגורציה שמותקנים החיישנים שכל אחרי

- physical channelsבעזרת רפואי, ביו שמכשיר הנתונים פורמט את לתאר עלינו , בצורה החבילות את לפענח תוכל שהיא כך שלנו לאפליקציה המובנת בשפה משדר

. ישות, מגדירים אנו זו מטרה בשביל המתאימות למדידות הערכים את לייחס ותדע נכונה.schemaבשם

Schema

Virtual Channelsלכל לתת מנת ישות Physical channelעל מגדירים אנחנו שונות תצוגה אפשרויות כמה

virtual channelבשם

Virtual Channels

Screens בשם ישות הגדרנו הבדיקה של ראשי תצוגה מסך להגדיר מנת עזר. Screenעל כלי זה

, את להגדיר לנו שנוחה בצורה תצוגה של האלמנטים כל את למקם לנו מאפשר אשר' , וכו עדכונים קצב הגרף של הזמן אורך

Screens

Bluetooth

General Preferences

Main Test Screen

BioMedicalWebAppשל הזיכרון צריכת כמות את ולהקטין המעוניינים לכלל בדיקה לתוצאות גישה לתת מנת על

פיתחנו מאוד מוגבל משאב הוא שבהם על web applicataionהטאבלטים עונה אשר. האלה הצרכים

BioMedicalWebApp

BioMedicalWebAppweb services בפורמט העולם עם .JSON objectsמתקשרים רשימתweb services ( ל ביחס נתונות הכתובות ( :web_application_url/serviceכל/getAllTests - את . JSONArrayמחזירה במערכת נשמרו אשר הבדיקות כל של

 /test/{id}/{type}/{channelNumber} -את של JSONArrayמחזירה הנקודות כל של

{ מספר הערוץ{ }channelNumberערוץ בדיקה{ }typeטיפוס .idומספר ערך{ , זמן בפורמט

BioMedicalWebApp/addNewPackage -על רק את POST HTTP Methodעונה ומוסיפה

ל מצורפת אשר המידע .web applicationל requestחבילת/createTest -על רק הבדיקה POST HTTP Methodעונה את ומוסיפה

ב ב. web applicationהחדשה מצורפים היו אשר להגדרות POSTבהתאםRequest .ב נוצר שטסט ל web applicationאחרי כתגובה requestנשלח

response ל בחזרה הזאת הבדיקה של סידורי מספר של. clientעם ברצונו אם" clientה במספר להשתמש עליו ל הנ הבדיקה עבור מידע חבילות להוסיף

. הזה הסידורי

/tests/{id} -ה את עם JSONObjectמחזיר הטסט את מתאר testIdאשר= {id}.

{/testId{/}channelType{/}channelNumber{/}startTime/}{endTime } -הזמנים בין הנקודות כל startTime מוחזרים and endTime של

מספר מספר channelTypeמטיפוס channelNumberערוץ עם הטסט של.testIdסידורי

{/testId{/}channelType{/}channelNumber{/}startTime/}{endTime{/}limit } -כמו web service בטווח נקודות כשכמות רק למעלה

ב מוגבלת .limitהזה

המימוש BluetoothServiceעקרונות

הservice: הבא תרשים לפי ועובד רפואית בדיקה ביצוע תחילת כפתור על לחיצה עם לרוץ מתחיל

האם 1. , Bluetooth adapterבודק לשלב ועובר שגיאה הודעת רושם לא אם 4עובד

למכשיר 2. להתחבר אם Bluetoothמנסה הודעות מקבלת אפליקציה שממנו כמכשיר באפליקציה נבחר אשרלשלב ועובר כישלון על מודיע מצליח 4לא

ה 3. עוד (socketכל שורה ) כי שנשלחת החבילה את תקרא הצדדים משני פתוח

.a לשלב תעבור הצליח חבילה פינוח אם החבילה את 3a1אחרת 3a2תפענח

ל 1. מתאימה אינה שהתקבלה שהחבילה לשלב schemaתודיע ותעבור 4נוכחית

על 2. ותחזור החבילות את לנהל תפקידו אשר האפליקציה של הנתונים למבנה החבילה את תוסיף.3שלב

ה 4. של עבודה סיום על .serviceתודיע אותו ותסגור

Create new test

/addTest

המימוש ApplicationDataעקרונות

ראשי תצוגה מסך עיקרונות

WebUploader Service הservice , מתחבר שמשתמש פעם כל ההפעלה מערכת של הריצה תחילת עם לרוץ מתחיל

. ה, ש לציין חשוב הנוכחית בדיקה סיום הכפתור על לחיצה אחרי או ירוץ serviceלאינטרנט לאה עם זמנית . MyBluetoothServiceבו ה בדיקה ביצוע בזמן משאבים לצרוך לא מנת על

service: הבא תרשים לפי עובד

.1 , לשלב עובר כן אם נתונים במסד שמורות חבילות יש לשלב 2האם 4אחרת

לשלב 2. המשך כן אם אינטרנט חיבור קיים האם 3תבדוק

.a ל חבילות שליחת יכולת אי על למשתמש לאינטרנט web serverתודיע יתחבר שמשמתמש וברגע. אוטומטי באופן תתחיל השליחה

נתונים 3. במסד חבילות יש עוד כל

.a לשלב תחזור הצליחה לא השליחה אם לשרת חבילה תוך 3aשלח אותה לשלוח מצליח לא הוא אםלשלב 10 תעבור ו למשמש תודיע .4נסיונות

.b שלב אל ותחזור לוקלי נתונים ממסד נשלחה אשר החבילה את .3תמחק

ה 4. את .Serviceתסגור כך על ותודיע

Android Application Database

WebApplicationCache = Priority Queue

getTest()

Web Application Database

Tools and platforms: Simulator:

Eclipse Java EE IDE for Web Developers. Version: Kepler Service Release 1. Build id: 20130919-0819 https://www.eclipse.org/downloads/ working with bluetooth library: bluecove-2.1.1 http://bluecove.org/

Android application: Android Developer Tools http://developer.android.com/tools/sdk/eclipse-adt.html graph open source project: http://jjoe64.github.io/GraphView/

web application: Eclipse Java EE IDE for Web Developers. Version: Kepler Service Release 2 Build id: 20140224-0627 MySql 5.5 http://dev.mysql.com/downloads/mysql/ Tomcat7 Server http://tomcat.apache.org/download-70.cgi Highcharts javascript graph library - highcharts.com/ BoneCp - Java database connection pool http://jolbox.com/ Restlet - for webservices http://restlet.com/

Amazon web services: http://aws.amazon.com/console/ Putty - http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html WinSCP - http://winscp.net/eng/index.php

Programming languages and technology : Java , xml, javascript, JQuery, html, css, sql, JSP.

Future Work: כגון האפליקציה של הגדרות רכיבי יצירת physicalאפשרות

channels schemas, virtual channels and screens בweb מריצים אשר המכשירים כל בין .android applicationושיתופם

ב אלגוריתם חיונית android applicationפיתוח לא נקודות יסנן אשר. הזמן. של גדולים יותר טווחים להציג נוכל כך ליצוג

ל שליחה לפני נתונים של .web applicationדחיסה , מנגנון ופיתוח במערכת ושימוש כניסה בקרת של מנגנון הוספת

. נתונים אבטחת פיתוחcache משך על ההגבלה את להסיר שנוכל כדי מתקדם יותר

. הבדיקה זמן

top related