Дипломна работа

Java/OSGi модул за комуникация с протокола EtherCAT за Vision Control системи | Защитена на: 01/01/1900

Дипломната работа цели да създаде софтуерен прототип, който да позволява комуникирането на Java/OSGi среда чрез протокола EtherCAT с камера за Vision Control системи. Използват се различни спецификации от проекта и партньорски отношения с колеги от фабриките, които ще ползват проучването.

            Целта на прототипа, който ще се създаде, е да инициира, поддържа и осъществява двустранна връзка със симулатора на EtherCAT комуникация, като ще се ползват Master и Slave Hilscher карти за протокола.

            Протоколът ще предоставя възможност да се комуникира с този симулатор и да се правят примерни заявки към него, като с течение на усложняването на софтуерния прототип те ще добиват мащаб и сложност от своя страна. В перспектива се планува разработеният прототип да се използва за комуникация с реалната камера и да удовлетвори изискванията на европейския проект HORSE. В бъдещ вариант този модул може да стане съставна част от от модул, който ще се използва за комуникация с целия HORSE framework, и за който ще споменем по-конкретно в архитектурния анализ на дипломната работа

            От гледна точка на работната среда на проекта HORSE, се цели да може да се превеждат съобщения от Java/OSGi среда (под формата на OSGi Event имплементации), в терминологията на езика Java, и после – съответно под формата на EtherCAT дейтаграми (datagrams) към съответния симулатор.  Целта е да се правят заявки към симулационната камера, които да инициират алгоритми на индустриалния компютър на Bosch Испания за различни операции с EtherCAT Vision Control системата.

            Допълнителна задача на дипломната работа е да се създаде прост уеб интерфейс, който позволява диагностично и тестово сменяне на параметри, които ще се препращат с тези три функции. Наличието на Java/OSGi работна среда позволява и конзолна интерпретация на интерфейса за допълнително информиране (debug) на потребителя. По този начин ще се предостави възможност за демонстрация на функционалността по протокола.

            Създаденият прототип ще послужи като направено проучване на тематиката на проекта HORSE и е от първите такива имплементации, които са пробвани за OSGi работна среда.

            С набора от средства, предоставени за европейския проект, се доставя среда, в която да се разработи прототипния модул успешно.

            OSGi/Java средата и инструментите са от основните фокуси на фирмата и са естествен избор за разработката на приложението. Gradle/Eclipse инструментите съпътстват разработката и се концентрират върху нейното удобно и нагледно имплементиране Наличието на хардуер за тестване на приложението дава възможност за практическа демонстрация и паралелно разработване и тестване. IHMC EtherCAT Master библиотеката е основен използван отворен код за задачата.

            Спазеният софтуерен модел на водопада дава представа за работната среда, в която е разработен модулът. Преглед на инструменти за управление на процеса като Jira, Blue Ant, Confluence допълнително дефинира това.

            Направен е анализ на задачата,който спомага дефинирането на ясни изисквания, функционални и нефункционални, към модула. Функционално се иска възможност да се тества и диагностицира връзката с EtherCAT по удобен начин, а от нефункционална гледна точка – да има някои базови рамки, в които да се вписва направеният модул.

            При проектирането се установява, че се разполага със всички възможни инструменти, библиотеки и структура на кода, за да се създаде прототипа. Налични са класове, които да се наследят, и интерфейси, които да се ползват за имплементацията. С библиотеката IHMC EtherCat Master, OSGi спецификационните класове и многонишково програмиране се създава приложението.

            С направеното изграждане на софтуерния компонент се стига до пълноценен прототип, който да служи за основа на бъдещия модул. Написани са няколко класа (активатор, работеща нишка, буфери, master, slave), свързани в система на Java/OSGi, и те са тествани за функционалности (например стартиране на приложението, поддържане на работата му, работа с буферите и с връзката), като всички тестове са минати успешно. Направеното видео, което демонстрира тази функционалност и съпътства прототипа, доказва това.

Scroll to Top