Мазмуну:

IoT - Көчмө маанай кабарчысы: 4 кадам
IoT - Көчмө маанай кабарчысы: 4 кадам

Video: IoT - Көчмө маанай кабарчысы: 4 кадам

Video: IoT - Көчмө маанай кабарчысы: 4 кадам
Video: Биржа/ Кантип туура инвестиция кылуу керек?/ Акция менен алектенген мекендештер. #stock market 2024, Ноябрь
Anonim
IoT - Көчмө маанай боюнча кабарчы
IoT - Көчмө маанай боюнча кабарчы

Бизге керектүү нерселер:

  • Raspberry Pi менен Raspbian
  • Адафруттан тийген сенсор
  • Кубат булагы (Батарея/DC)
  • Raspberry Pi үчүн Ethernet же WiFi
  • Башка компьютер

1 -кадам: Биздин Raspberry Pi жабдыктарын орнотуу

Биздин Raspberry Pi жабдыктарын орнотуу
Биздин Raspberry Pi жабдыктарын орнотуу
Биздин Raspberry Pi жабдыктарын орнотуу
Биздин Raspberry Pi жабдыктарын орнотуу

Биринчиден, сенсордук сенсорубузду Raspberry Piдеги GPIO казыктарына туташтырыңыз. Кээ бир ийкемдүү кабелдерди колдонуңуз

Сенсорубуздагы 3 казыкты аныктаңыз:

  • GND - жерге туташтыруу
  • VCC - 5V пинге туташуу
  • SIG - белги төөнөгүчкө туташуу

Биз бул мисалда биздин малина пи боюнча 5V, жер жана GPIO 18 колдонобуз.

2 -кадам: Raspberry Piде айлана -чөйрөнү орнотуу

Raspberry Piде айлана -чөйрөнү орнотуу
Raspberry Piде айлана -чөйрөнү орнотуу

Биздин малина Piнин IP дарегин алыңыз.

Анда ssh аркылуу биздин малина пи менен туташыңыз:

ssh колдонуучунун аты@ipaddress

анда биздин паролду териңиз.

Биз киргенден кийин, терүү менен apache2ди веб -серверибиз катары орнотуңуз:

sudo apt-get apache2 орнотуу

3 -кадам: Биздин сенсорубуздан кирүүлөрдү окуу үчүн Python кодунун бир бөлүгүн иштеп чыгыңыз

Сенсорубуздан киргендерди окуу үчүн Python кодунун бир бөлүгүн иштеп чыгыңыз
Сенсорубуздан киргендерди окуу үчүн Python кодунун бир бөлүгүн иштеп чыгыңыз

Дизайн

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

Биз бактылуу экенибизди көрсөтүү үчүн, биз 2 узак пресс жасайбыз

Көңүлүбүздү чөгөрбөө үчүн, биз бир кыска таптоо жана бир узун басуу кылабыз

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

Зеригип жатканыбызды көрсөтүү үчүн, биз 3 кыска таптоо

Буларды буйрук командаларына которуу: (t кыска басуу үчүн, узакка басуу үчүн, кыска аралык үчүн g, узундук үчүн G)

бактылуу: TgT

кайгылуу: tgT

чаташкан: tGtgt

зеригип: tgtgt

Андан кийин биз кодубузду учурдагы маанайыбызды браузерге ылайыктуу html файлына чыгарабыз.

Code

GPO импорттоо убактысы катары RPi. GPIO импорттоо

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM) GPIO.setup (18, GPIO. IN)

touch_count = 0

touch_state = 0 touch_duration = 0 gap_duration = 0 current_cmd = ""

def cmd ():

global current_cmd if current_cmd [-3:] == "TgT": current_cmd = "" маанай ("Кайгылуу"), эгер current_cmd [-3:] == "tgT": current_cmd = "" маанай ("Бактылуу"), эгер current_cmd [-5:] == "tGtgt": current_cmd = "" маанай ("Адашып калган"), эгер current_cmd [-5:] == "tgtgt": current_cmd = "" маанайы ("Зеригүү")

маанай (маанай):

file = open ("index.html", "w") html = """

Көчмө маанай кабарчысы

Эй, менин акыркы маанайым

{}

"""

file.write (html.format (маанай))

ал эми (1):

time.sleep (0,001) if (GPIO.input (18)): if touch_state == 0: if gap_duration> 2000: gap_duration = 0 if gap_duration> 200: current_cmd = current_cmd + "G" else: current_cmd = current_cmd + "g "gap_duration = 0 touch_state = 1 touch_count = touch_count + 1 if touch_state == 1: touch_duration = touch_duration + 1 other: if gap_duration 200: current_cmd = current_cmd +" T "else: current_cmd = current_cmd +" t "touch_duration = 0 cmd ()

GPIO.cleanup ()

Веб -серверибиз менен иштөө үчүн орнотуу

Жогорудагы python файлын биздин веб -сервер жайгашкан жерге териңиз же жүктөңүз, демейки/var/www/html

cd/var/www/html

sudo nano touch.py

Андан кийин жогорудагы кодду териңиз

4 -кадам: Серверибизди иш жүзүндө көрүү үчүн баштаңыз

Аны иш жүзүндө көрүү үчүн биздин серверди баштаңыз!
Аны иш жүзүндө көрүү үчүн биздин серверди баштаңыз!

cd/var/www/html

sudo python touch.py

Андан кийин биздин Raspberry Pi үчүн IP дарегин териңиз, анда биздин маанай боюнча кабарчыбыздын иштешин көрүшүбүз керек!

Түрдүү түрдөгү буйруктарды колдонуп көрүңүз, жана баракчаны чагылдыруу үчүн автоматтык түрдө жаңыртуу керек!

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