Мазмуну:

Lock Changer: QR-коду менен ачык эшик: 8 кадам
Lock Changer: QR-коду менен ачык эшик: 8 кадам

Video: Lock Changer: QR-коду менен ачык эшик: 8 кадам

Video: Lock Changer: QR-коду менен ачык эшик: 8 кадам
Video: POE видеорегистратор ASECAM фиксация ЛИЦ определение ЧЕЛОВЕКА И АВТОМОБИЛЯ!!! 2024, Ноябрь
Anonim
Image
Image
Функционалдык анализ
Функционалдык анализ

Саламатсызбы, менин атым Бен Ванпукке, мен Кортрихтогу (Бельгия) Хоестте Жаңы Медиа жана Байланыш Технологиясын окуйм. Мектепке тапшырма катары биз IoT түзмөгүн жасашыбыз керек болчу. Airbnb аркылуу батирлерди ижарага алып, мен чыныгы ачкычтын ордуна виртуалдык ачкыч (QR коду) менен батир, үй, бөлмө ачуу идеясын алдым. Мен түзмөгүмө "LockChanger" деген ат бердим. Төмөндө сиз бул куралды жасоо үчүн зарыл болгон бардык кадамдарды окуй аласыз. Мен жана мен жасаган башка долбоорлор жөнүндө көбүрөөк билгиңиз келсе, портфолиомду текшериңиз.

1 -кадам: Функционалдык анализ

Идея ишке ашты. Эми бул идея элге жакса, иликтөө убактысы келди. Ошентип, мен Airbnbге уруксат берген турак жайдын ээлери болгон адамдар менен интервью бердим. Алар бул идеяны абдан жактырышты жана аны мүмкүн болушунча тезирээк курушумду каалашты. Ошентип калган процессти баштадым. Мен кээ бир дал келүүчүлүк анализин жасап, кээ бир инсандарды жаздым. Андан кийин мен кээ бир колдонуучулардын окуяларын жана карта окуяларын жасадым. Андан кийин мен ишенимдүүлүгү төмөн зым каркастарды жасап, колдонуучулардын тесттерин жасадым. Мен алган пикирлердин негизинде кадрларды алмаштырдым.

2 -кадам: Материалдарды чогултуу

Материалдарды чогултуу
Материалдарды чогултуу
Материалдарды чогултуу
Материалдарды чогултуу
Материалдарды чогултуу
Материалдарды чогултуу

Вебсайтты иштеп чыгууну жана инструментти түзүүнү баштоодон мурун, менде түзмөгүмдүн керектүү бөлүктөрү бар экенине ынануум керек болчу. Куралдар кутусунан издей баштадым жана заказ кылуу үчүн керектүү нерселерди жаздым. Бул жерде сиз материалдардын толук эсебин таба аласыз. Бул негизги бөлүктөр:

1. Buzzer

2. ЖК дисплей

3. LED биколор

4. Кулпу

5. Raspberry pi

6. Камера

7. Сканер

8. Жыгач

3 -кадам: Маалыматтар базасы

Маалыматтар базасы
Маалыматтар базасы

Материалдарды сатып алып, бир аз изилдөө жүргүзгөндөн кийин, нерселерди реалдуу кылууга убакыт келди.

Мен жактын байланыш диаграммасын түзө баштадым, анын маалымат базасын түздүм жана кээ бир маалыматтарды киргиздим. Көп өтпөй кээ бир каталар бар экени айкын болду, ошондуктан мен муну жетишерлик жакшы деп ойлогонго чейин кайра -кайра жасадым. Бул абдан динамикалуу, ошондуктан сиз кээ бир талааларды кошуп, жаңыртып же алып салсаңыз болот.

Жөнөкөйлүк жана жакшыраак натыйжалар үчүн мен сканерлөө столдорун колдонуучуларга жана турак жайларга байланыштырдым.

Мен веб -сайтта иштерди жеңилдетүү үчүн кээ бир сакталган функцияларды жана сакталган процедураларды жасадым.

Бул жактын байланыш диаграммасын түзүү үчүн draw.io.ду колдондум.

Бул кадамга тиркелип, менин Mysql таштандысын таба аласыз. Ошентип, сиз аны оңой импорттой аласыз.

4 -кадам: Жооптуу веб -сайтты иштеп чыгуу

Жооптуу вебсайтты иштеп чыгуу
Жооптуу вебсайтты иштеп чыгуу
Жооптуу вебсайтты иштеп чыгуу
Жооптуу вебсайтты иштеп чыгуу

Менин жооптуу веб -сайтым кандай болушу керек деп ойлонуп жаттым. Мен муну кылаардан мурун, мен жасаган функционалдык анализге кайрылып, илхам жана кызыктуу моделдерди издөөгө туура келди.

Биринчиден, мен дизайнымды Adobe XDде жасадым. Үстүндөгү сүрөттөрдөн мен мазмунду жакшы жайгаштыруу үчүн макетти жана баштапкы торду колдонгонумду көрө аласыз.

Мен колдонгон шрифт Robotto болчу. Мен колдонгон сүрөттөр pexels.com сайтынан cco License болчу.

Дизайнды мугалимдерим жактырды, ошондуктан мен программалоону баштай алам. Мен сайтты HTML - CSS - Python (Jinja2 жана Flask) менен жаздым.

Бул кадамга тиркелип, менин дизайнымды web.xd сайтынан таба аласыз.

5 -кадам: Fritzing схемасы

Fritzing Scheme
Fritzing Scheme

Бир нече жумадан кийин, менин түзмөгүмдү кура башташым үчүн менин компоненттерим жеткирилди. Баарынан мурда мен баарын туура жол менен туташтыруу үчүн схема түздүм.

Мен дисплейге туташуу үчүн 6 пинтүү GPIO колдондум. Камераны түз эле малина пи -ге туташтырса болот. Мен штрихкод сканерди 5v ди 3.3v га айландыруу үчүн деңгээл конвертору менен туташтырууну тандадым, ошондуктан мен пи менен сериялык байланышты сактай алам. Bicolor LED 2 gpio казыгын колдонот.

Транзисторго дагы бир gpio пин керек. Андан кийин, мен 12vди кулпуга туташтырдым жана транзисторду жалпы жерге бириктирдим. Компоненттериңизди коргоо үчүн диод колдонууну тактаңыз.

Зумер штрих -код сканери менен туташкан. Башка GPIO пин да коңгуроого туташкан, андыктан мен код менен кандайдыр бир үн чыгара алам. Жакшы көрүңүз: Бул үчүн 2 диод колдонулат.

Бул схеманы түзүү үчүн мен фризингди колдондум. Сиз бул кадамга тиркелген схеманы колдоно аласыз.

6 -кадам: Лазерди кесүү жана туташтыруу

Lazer кесүү жана туташтыруу
Lazer кесүү жана туташтыруу
Lazer кесүү жана туташтыруу
Lazer кесүү жана туташтыруу
Lazer кесүү жана туташтыруу
Lazer кесүү жана туташтыруу

Бир досум менен бирге токойду кыдырдым. Мен калыңдыгы 8 мм болгон мультиплекс жыгачты тандайм. Муну жасагандан кийин, мен компоненттеримди кадрга түртүп койдум. Мен компоненттерди плитанын артына бир нече бурамалар менен толтургучсуз орноттум.

Андан кийин мен штрих -код сканерин TX en RX портундагы (сериялык байланыш) малина пи менен туташуу үчүн деңгээл конвертору менен (5v to 3.3v) орноттум.

Мен дисплейди малина пи менен байланыштырдым жана интенсивдүүлүк үчүн потенциометрди колдондум.

Жок дегенде кулпумду 12в адаптер менен орноттум. Муну аткарууда транзисторду жана диодду колдонгонуңузду текшериңиз.

Бул кадамга тиркелип, Adobe иллюстраторунан менин лазердик кесүү схемамды таба аласыз

7 -кадам: Кээ бир коддорду жазуу

Кээ бир коддорду жазуу
Кээ бир коддорду жазуу

Эми бардык компоненттер ошол жерде иштээрине ынануу убактысы келди. Ошентип, мен pythonго кээ бир коддорду жазып, аны малина piге жайгаштырдым. Менин кодумду Githubдан мугалимдерим муну ачыкка чыгарганда таба аласыз.

github.com/NMCT-S2-Project-I/project-i-Ben-Vanpoucke

Кодду программалоо үчүн мен Pycharm колдонушум керек болчу. Код html, CSS жана python (Flask and Jinja) менен жазылган

8 -кадам: Эшикти жана Колдоону кошуу

Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу
Эшикти жана Колдоону кошуу

Мен панелдин жалгыз болушун кааладым, ошондуктан мен бул үчүн колдоону коштум. Ал үчүн жыгач клей колдондум. Ушундан кийин эшикти туташтырдым.

Сунушталууда: