Тема: Тема диплому бакалавра
Яку тему можете запропонувати?
Технічний напрям: метрологія, електроніка чи програмування.
Хотілось би робити те від чого буде якась користь...
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → Інше → Тема диплому бакалавра
Для відправлення відповіді ви повинні увійти або зареєструватися
Яку тему можете запропонувати?
Технічний напрям: метрологія, електроніка чи програмування.
Хотілось би робити те від чого буде якась користь...
Роби те,в чому сам більше розбираєшся та те,по по чому можна знайти більше інфи в інтернеті.
по темах електроніка+програмування, можна розробити систему управління світлофором з дорогою машинками і пішоходами
Я вам можу віддати свій діплом. То було щось типу ммо. Я там юзав unity3D для клієнта, c# для сервера, mysql для збереження данних, і невеличкий сайтик (1 сторінка десь) з AJAJ'єм, для реєстрації. Здав на 5!
Роби те,в чому сам більше розбираєшся та те,по по чому можна знайти більше інфи в інтернеті.
та у мене є резервні проекти, але я би хотів щось цікаве і корисне робити
покищо нічого такого не придумав
по темах електроніка+програмування, можна розробити систему управління світлофором з дорогою машинками і пішоходами
то вже сотні разів робили... це не цікаво...
Я вам можу віддати свій діплом. То було щось типу ммо. Я там юзав unity3D для клієнта, c# для сервера, mysql для збереження данних, і невеличкий сайтик (1 сторінка десь) з AJAJ'єм, для реєстрації. Здав на 5!
я на кафедрі "Метрологія та інформаційно-вимірювальні технології" — ігри тут не пройдуть)
та і я не хочу брати чужий проект...
Яку тему можете запропонувати?
Технічний напрям: метрологія, електроніка чи програмування.
Хотілось би робити те від чого буде якась користь...
Є ідея, для неї треба Linux, USB, мікроконтролер PIC (вміти писати "прошивки" для нього). Зацікавило?
ADR написав:Яку тему можете запропонувати?
Технічний напрям: метрологія, електроніка чи програмування.
Хотілось би робити те від чого буде якась користь...
Є ідея, для неї треба Linux, USB, мікроконтролер PIC (вміти писати "прошивки" для нього). Зацікавило?
Прошивки писати не вмію, але добре знаю самий тупий асм (під i8085) і знаю С.
І у мене є майже рік щоб навчитись всього іншого)
Так якщо щось цікаве то можна)
HetmanNet написав:ADR написав:Яку тему можете запропонувати?
Технічний напрям: метрологія, електроніка чи програмування.
Хотілось би робити те від чого буде якась користь...
Є ідея, для неї треба Linux, USB, мікроконтролер PIC (вміти писати "прошивки" для нього). Зацікавило?
Прошивки писати не вмію, але добре знаю самий тупий асм (під i8085) і знаю С.
І у мене є майже рік щоб навчитись всього іншого)
Так якщо щось цікаве то можна)
Ну тоді все просто і не зовсім просто. Вас цікавила метрологія, тож це задовольнити легко: просто знімати виміри з чогось; вас цікавить електроніка: тож зробимо пристрій для вимірювання чогось; вас цікавить програмування: то зробимо цей пристрій на основі мікроконтролерів і залежним від ПК.
Тепер до самої суті, зважаючи що часу небагато на вивчення і реалізацію, ну рік то не так багато як здається, не будемо заморочуватися комплексами чи складними системами виміру чи діагностики. Все просто, прості цифрові датчики температури, що підключаються до ПК через USB, як ускладнення їх можна зробити безпровідними. Як для першого проекту достатньо.
В реалізації берете PIC18F4550 (чи інший PIC з апаратною реалізацією USB), береш датчик температури (якщо є гроші можеш ще датчик вологи, тиску, акселерометр 3-х і т.д.), і мудруєш як це все зв'язати, якщо здасться мало то ще береш комплект радіомодулів "радіо дріт" та ще один мікроконтролер, і все це зв'язуєш. Пишеш прошивку, і мудруєш з тим як написати прогу на комп для показу виміряних даних. Якщо захочеш екстриму, то робиш два безпровідних датчики і намагаєшся створити приймач що прийматиме дані більше ніж з одного датчика. Здається просто, а насправді мізки паритимеш багато. В безпровідній реалізації мікроконтролер з підтримкою USB просто по шині I2C зчитує дані з приймача (модуля) і перетворює у формат для передачі по USB, в провідній реалізації він виміряє (оцифровує через АЦП і приводить у одиниці виміру) та перетворює у формат для передачі по USB. В безпровідній реалізації другий мікроконтролер треба для виміру та передачі в передатчик по шині I2C. Як бачиш тут всплило те що доведеться ще вивчити принцип дії і роботи I2C. В процесі вспливе такого чимало. При під'єднанні кількох безпровідних датчиків до одного модулю безпровідного зв'язку тобі ще доведеться ще поламати голову над протоколом, щоб два датчики (чи більше) мали змогу передавати дані по черзі не глушачи одне одного. Все з виду просто, але навіть над одним безпровідним датчиком температури попариш мізки дуже, а якщо ще для linux писати програму то матимеш досвід на все життя що дасть чимало корисного.
ADR написав:HetmanNet написав:Є ідея, для неї треба Linux, USB, мікроконтролер PIC (вміти писати "прошивки" для нього). Зацікавило?
Прошивки писати не вмію, але добре знаю самий тупий асм (під i8085) і знаю С.
І у мене є майже рік щоб навчитись всього іншого)
Так якщо щось цікаве то можна)
Ну тоді все просто і не зовсім просто. Вас цікавила метрологія, тож це задовольнити легко: просто знімати виміри з чогось; вас цікавить електроніка: тож зробимо пристрій для вимірювання чогось; вас цікавить програмування: то зробимо цей пристрій на основі мікроконтролерів і залежним від ПК.
Тепер до самої суті, зважаючи що часу небагато на вивчення і реалізацію, ну рік то не так багато як здається, не будемо заморочуватися комплексами чи складними системами виміру чи діагностики. Все просто, прості цифрові датчики температури, що підключаються до ПК через USB, як ускладнення їх можна зробити безпровідними. Як для першого проекту достатньо.
В реалізації берете PIC18F4550 (чи інший PIC з апаратною реалізацією USB), береш датчик температури (якщо є гроші можеш ще датчик вологи, тиску, акселерометр 3-х і т.д.), і мудруєш як це все зв'язати, якщо здасться мало то ще береш комплект радіомодулів "радіо дріт" та ще один мікроконтролер, і все це зв'язуєш. Пишеш прошивку, і мудруєш з тим як написати прогу на комп для показу виміряних даних. Якщо захочеш екстриму, то робиш два безпровідних датчики і намагаєшся створити приймач що прийматиме дані більше ніж з одного датчика. Здається просто, а насправді мізки паритимеш багато. В безпровідній реалізації мікроконтролер з підтримкою USB просто по шині I2C зчитує дані з приймача (модуля) і перетворює у формат для передачі по USB, в провідній реалізації він виміряє (оцифровує через АЦП і приводить у одиниці виміру) та перетворює у формат для передачі по USB. В безпровідній реалізації другий мікроконтролер треба для виміру та передачі в передатчик по шині I2C. Як бачиш тут всплило те що доведеться ще вивчити принцип дії і роботи I2C. В процесі вспливе такого чимало. При під'єднанні кількох безпровідних датчиків до одного модулю безпровідного зв'язку тобі ще доведеться ще поламати голову над протоколом, щоб два датчики (чи більше) мали змогу передавати дані по черзі не глушачи одне одного. Все з виду просто, але навіть над одним безпровідним датчиком температури попариш мізки дуже, а якщо ще для linux писати програму то матимеш досвід на все життя що дасть чимало корисного.
Дуже дякую за розгорнуту відповідь!
На даний час це основна тема!
Проблем справді багато: було б добре щоб давачі працювали від батарейок, а значить брали мало енергії, а значить вони повинні більшу частину часу бути неактивними. Тобто варіант коли кліент опитує кожен давач не підходить (давачі мають самі давати про себе чути).
Найближчими днями почну шукати матеріали)
думки в слух: Хм... якщо дані вносяться на ПК, то було б добре вивести картинку із планом хати та даними з кожної кімнати... вчити С++ лише для цієї програми? може й так... подивлюсь... (було б ідеально щоб давач міг під'єднуватись до мережі, але це буде ще складніше)
вчити С++ лише для цієї програми? може й так... подивлюсь...
Під якісь мікроконтролери можна й на FreePascal-і писати. Там здається лише асемблер та лінкер потрібні.
HetmanNet написав:ADR написав:Прошивки писати не вмію, але добре знаю самий тупий асм (під i8085) і знаю С.
І у мене є майже рік щоб навчитись всього іншого)
Так якщо щось цікаве то можна)
Ну тоді все просто і не зовсім просто. Вас цікавила метрологія, тож це задовольнити легко: просто знімати виміри з чогось; вас цікавить електроніка: тож зробимо пристрій для вимірювання чогось; вас цікавить програмування: то зробимо цей пристрій на основі мікроконтролерів і залежним від ПК.
Тепер до самої суті, зважаючи що часу небагато на вивчення і реалізацію, ну рік то не так багато як здається, не будемо заморочуватися комплексами чи складними системами виміру чи діагностики. Все просто, прості цифрові датчики температури, що підключаються до ПК через USB, як ускладнення їх можна зробити безпровідними. Як для першого проекту достатньо.
В реалізації берете PIC18F4550 (чи інший PIC з апаратною реалізацією USB), береш датчик температури (якщо є гроші можеш ще датчик вологи, тиску, акселерометр 3-х і т.д.), і мудруєш як це все зв'язати, якщо здасться мало то ще береш комплект радіомодулів "радіо дріт" та ще один мікроконтролер, і все це зв'язуєш. Пишеш прошивку, і мудруєш з тим як написати прогу на комп для показу виміряних даних. Якщо захочеш екстриму, то робиш два безпровідних датчики і намагаєшся створити приймач що прийматиме дані більше ніж з одного датчика. Здається просто, а насправді мізки паритимеш багато. В безпровідній реалізації мікроконтролер з підтримкою USB просто по шині I2C зчитує дані з приймача (модуля) і перетворює у формат для передачі по USB, в провідній реалізації він виміряє (оцифровує через АЦП і приводить у одиниці виміру) та перетворює у формат для передачі по USB. В безпровідній реалізації другий мікроконтролер треба для виміру та передачі в передатчик по шині I2C. Як бачиш тут всплило те що доведеться ще вивчити принцип дії і роботи I2C. В процесі вспливе такого чимало. При під'єднанні кількох безпровідних датчиків до одного модулю безпровідного зв'язку тобі ще доведеться ще поламати голову над протоколом, щоб два датчики (чи більше) мали змогу передавати дані по черзі не глушачи одне одного. Все з виду просто, але навіть над одним безпровідним датчиком температури попариш мізки дуже, а якщо ще для linux писати програму то матимеш досвід на все життя що дасть чимало корисного.Дуже дякую за розгорнуту відповідь!
На даний час це основна тема!
Проблем справді багато: було б добре щоб давачі працювали від батарейок, а значить брали мало енергії, а значить вони повинні більшу частину часу бути неактивними. Тобто варіант коли кліент опитує кожен давач не підходить (давачі мають самі давати про себе чути).
Найближчими днями почну шукати матеріали)
думки в слух: Хм... якщо дані вносяться на ПК, то було б добре вивести картинку із планом хати та даними з кожної кімнати... вчити С++ лише для цієї програми? може й так... подивлюсь... (було б ідеально щоб давач міг під'єднуватись до мережі, але це буде ще складніше)
Не С++, а С.. під мікроконтролери пишуть на С і профі на Асемблер, на С ти і на комп напишеш, тож вчи С, його застосуєш як на мікроконтролері так і на компі. Якщо хочеш через мережу дані передавати, то є мікроконтролери PIC з апаратною підтримкою Ethernet (але то у рази важче ніж USB). Щодо приймача і передавача, то необов'язково паритися хто кому перший передасть, є готові модулі які самі вирішують хто перший, але зв'язок раджу двосторонній робити (тобто зі зворотнім), щоб модуль що отримує корисні дані міг віддавати команди датчику (модуль що передає корисні дані) для керуванні і також для контролю за передачею. Щодо мінімізації енергоспоживання, то тут вирішують питання за допомогою серій мікросхем (мікроконтролерів, модулів зв'язку і т.д.) з пониженим енергоспоживанням. Можна під'єднати до мікроконтролера RAM пам'ять з I2C інтерфейсом для створення буфера, тобто "приймач" (модуль прийому корисних даних) на початку дає команду про період вимірів і частоті сеансів передач та переходить у режим очікування даних, датчик отримавши налаштування підтверджує, вимикає модуль зв'язку, вимірює з певним періодом і заносить до буфера, коли буфер заповниться на заданий рівень вмикається модуль зв'язку і передає весь його вміст одним пакетом, очищує буфер, отримує налаштування і все заново. Було би добре, щоб модуль зв'язку мав керування окремо живлення контуром передачі і приймання, щоб вимикати у датчика передатчик і залишити приймач, щоб можна було змінювати налаштування коли завгодно, і щоб реалізувати режим очікування (тобто залишається приймач і мікроконтролер який очікує команди). Навіщо змінювати налаштування між сеансами передач? Ну все просто, датчики температури досить інерційні, тому виміряти дані з них можна і раз на секунду, і то цього буде забагато, бо з практики знаю що і раз на хвилину достатньо, тож як розумієш буфер може накопити від кількох вимірів до кількох тисяч, тож тисяча вимірів щохвилини то до біса великий проміжок часу між сеансами зв'язку, та навіть при частоті вимірів раз на секунду дофіга, тож можливість зміни налаштувань чи перехід в режим реального часу треба мати.
ADR написав:вчити С++ лише для цієї програми? може й так... подивлюсь...
Під якісь мікроконтролери можна й на FreePascal-і писати. Там здається лише асемблер та лінкер потрібні.
під мікроконтролер я на С планував. а С++ хотів запхати в кліент на ПК, але це я просто забув про FreePascal)
...
А можна весь давач зробити виключно на одній мікросхем? там є ЦАП для передачі сигналу та є термо-давач (згідно вікіпедії)
http://www.kosmodrom.com.ua/el.php?name=ATtiny13A-SSU
короче треба ще почитати про радіозв'язок)
HetmanNet написав:...
А можна весь давач зробити виключно на одній мікросхем? там є ЦАП для передачі сигналу та є термо-давач (згідно вікіпедії)
http://www.kosmodrom.com.ua/el.php?name=ATtiny13A-SSUкороче треба ще почитати про радіозв'язок)
Тобі знадобиться все одно один мікроконтролер (у ньому вже є АЦП), термодатчик, готовий модуль зв'язку (одна мікросхема на маленькій платі із антеною), це для датчика. Для приймача треба мікроконтролер, готовий модуль зв'язку. Тож яка одна мікросхема??
Torbins написав:ADR написав:вчити С++ лише для цієї програми? може й так... подивлюсь...
Під якісь мікроконтролери можна й на FreePascal-і писати. Там здається лише асемблер та лінкер потрібні.
під мікроконтролер я на С планував. а С++ хотів запхати в кліент на ПК, але це я просто забув про FreePascal)
Мало клопоту? Юзай FreePascal. Для C/С++ проектів і бібліотек, які можна використати. Ознайомся з Qt, він допоможе зі створенням програми для ПК, також libusb подивися.
HetmanNet
А можна якийсь лінк, де говориться, що на FreePascal буде суттєво гірше, ніж на C/С++, особливо в плані розробки для ПК?
1. Я мав на увазі що одна мікросхема на 1 давач
2. Мене зараз агітують С++ + Qt вчити (напр Qt Creator. ми його будемо вчити в наступному семестрі), але думаю чи воно мені треба... короче буде видно. А прогу під контролер я і так на С хотів писати.
3. Таке питання: а можете запропонувати практичне використання цього всього? Просто у мене дома є два градусника в двох кімнатах і мені ніколи/дуже рідко треба було знати яка температура в іншій кімнаті.
Чи позиціонувати його як прилад не для хатнього використання, а як для контролю якогось об'єкту (температури акваріуму, кімнати з грибами чи що там може бути?)
1. Я мав на увазі що одна мікросхема на 1 давач
2. Мене зараз агітують С++ + Qt вчити (напр Qt Creator. ми його будемо вчити в наступному семестрі), але думаю чи воно мені треба... короче буде видно. А прогу під контролер я і так на С хотів писати.3. Таке питання: а можете запропонувати практичне використання цього всього? Просто у мене дома є два градусника в двох кімнатах і мені ніколи/дуже рідко треба було знати яка температура в іншій кімнаті.
Чи позиціонувати його як прилад не для хатнього використання, а як для контролю якогось об'єкту (температури акваріуму, кімнати з грибами чи що там може бути?)
1. Немає мікроконтролерів із вбудованим радіомодулем, тож кожний пристрій складатиметься з двох мікросхем, незалежно чи то датчик чи то приймач. Приймач можна зробити один на кілька датчиків.
2. Як використати залежить від тебе, це може бути термометр для хати, тобто по датчику у кімнату і знаєш температури у кожній з них, і в той самий час це може бути частина системи клімат контролю, тобто використай як хочеш. Поміняй тип датчику і коефіцієнти в прошивці і матимеш термометр для акваріуму чи для кімнати з грибами. Тобто це універсальна система, робиш датчик температури під певний діапазон і середовище та маєш те що бажаєш. Головне в протоколі передачі даних передбач широкий діапазон температури та достатню кількість знаків після коми, передбач передачу інфи (назву датчику, діапозон виміру, точність, похибка, тип середовища, діапозон частоти виміру, крок зміни частоти виміру, діапозон частоти сеансів зв'язку, крок зміни частоти виміру, тип живлення, стан батареї (якщо від батареї), одиниці виміру) про датчик на етапі ідентифікації. Передача цієї інфи, а не тупо ід по яку програма шукає що за чудо, гарантує можливість розширювати кількість датчиків і їх типів та привернути увагу до диплому. Якщо до інфи додати тип датчику, то можна буде зазначити що можливо підключати не лише датчики температури до приймача. Щодо того як подати дані, то раджу у вигляді таблиці (режим логу і режим поточного стану) і графік (універсальний метод). Тож зробиш датчики температури, якщо буде бажання і час наприклад ще датчик вологості чи ще чого, та зможеш в дипломі вказати що це універсальна система збору даних до якої можна підключати купу різних датчиків: температури, вологості, освітленості, магнітного поля, струму, напруги, частотоміри, прискорення, рівня, і т.д. Щоб довести що це універсальна система досить двох різних датчиків, найдешевші будуть: температури і освітленості, обидва схожі за будовою і прошивкою будуть. Зробиш два датчики температури і один освітленості, два різних це універсальність, два однакових на те що система немає конфлікту при використані однакових датчиків.
шось то навіть не знаю з чого почати... (треба кучу всього шукати і вчити)
думаю завтра поговорити з викладачом який таким займався.
шось то навіть не знаю з чого почати... (треба кучу всього шукати і вчити)
думаю завтра поговорити з викладачом який таким займався.
Почни з мікроконтролерів, раджу PIC не молодше 18 серії, бо там є апаратна підтримка багатьох інтерфейсів.
Для відправлення відповіді ви повинні увійти або зареєструватися