Мазмұны:

Ақылды сабақ: 6 қадам
Ақылды сабақ: 6 қадам

Бейне: Ақылды сабақ: 6 қадам

Бейне: Ақылды сабақ: 6 қадам
Бейне: "Ақылды қадам" әдісі 2024, Қараша
Anonim
Ақылды сабақ
Ақылды сабақ

Smart Lesson бағдарламасы бойынша виза жасаудан бас тартуға болады, бұл сіздің кәсіби тәжірибеңізге сәйкес келмейді, бұл сіздің жеке тәжірибеңізге де сәйкес келмейді. de aula convencional.

1 -қадам: Материалдар

Материалдар
Материалдар

Dragonboard 410c бағдарламасы:

- Dragonboard 410c;

- Cabo HDMI;

-USB арқылы Teclado -USB арқылы монитор -Монитор;

- 96 метрлік қалқандар;

Орындаушы:

- Dragonboard 410c;

- 96 метрлік қалқандар;

- сенсорлы Grove IMU 10DOF MPU - 9250 (датчиктің сенсоры жоқ);

- Fonte de alimentação externa 11.1V;

- секіргіш фема-фема;

2 -қадам: Dragonboard 410c Com Mezzanine 96Boards: Configuracao E Pinagem

Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem

O Shield Mezzanine жұмыс істейді Dragonboard 410c, 3.3V / 5V (деңгейлерді ауыстырып қосқыш), егер сізде бірдейлік 1.8V болса. MPU -9250 Grove -IMU 10DOF сенсорлы магнитометрлік сенсор, әсіресе:

Қуат: 5V / 3.3V;

Қорғаныс: 6mA;

Comunicação сериясы;

Пино: VCC, GND, SDA e SCL;

I2C интерфейсі;

Мысалы, Grove I2C0 (5V), сенсордың функционалдығы мен қажеттіліктері үшін сериялық байланыс орнатылған. (veremem)

3 -қадам: Integração: Unity + Vuforia

Интеграциялар: Бірлік + Вуфория
Интеграциялар: Бірлік + Вуфория

1- Сайттағы ақпараттың жойылуы немесе жойылуы мүмкін.

2- Қадағалау менеджерінің мақсатты менеджері- бұл бақылау (Quanto mais complexa melhor).

3- Бірлік пен импорт үшін Feito дерекқоры қажет.

4- No Unity конфигурациясын орнатыңыз, ол 3D форматында жұмыс істейді, сонымен қатар жергілікті бағдарлама үшін имиджді орнатады.

5- Unity-ді конфигурациялау үшін лицензия қажет.

6- 3D бағдарламалық жасақтаманың негізгі компоненттері кескінді мақсатты түрде аула ретінде дайындауға мүмкіндік береді (Biologia ou Física бөлімінде…).

4 -қадам: Бірлік: O Android SDK конфигурациялаңыз

Бірлік: O Android SDK конфигурациялаңыз
Бірлік: O Android SDK конфигурациялаңыз

1- Android үшін SDK-мен жұмыс істеу, Unity-ді таңдауға болады.

2- Android үшін Unity платформасын жасаңыз, APK-мен келісіңіз.

3- Қолданбаларды орнатыңыз (конфигурациялау үшін рұқсат етілген қаріптер).

5 -қадам: Criando Servidor Local E Recebendo Informates Em Python

Criando Servidor Local E Recebendo ақпараты Em Python
Criando Servidor Local E Recebendo ақпараты Em Python

Конфигурациялар C ++, Java, Python және т.б тілдерді басқару жүйесіндегі бағдарламалық жасақтама мен бағдарламалық жасақтаманың бағдарламалық жасақтамасы арқылы орындалады. Бағдарламалық жасақтама сенсор, сенсор, процессор және бағдарламалық жасақтама бағдарламалық жасақтамаға сәйкес келеді. Depois carrega эсселері Unity платформасы үшін ең маңызды міндеттер болып табылады. Мысалы, Phyton лингвистикалық жобасының жобасы. Dragonboard 410c үшін Unity бағдарламасының қосымшасы.

Seguem os códigos mag_python.py (сенсормен жұмыс істейді), server2.py (жергілікті сервидор), Shell орындалмайды:

Código mag_python.py

#!/usr/bin/python

# Автор: Джон Трулсон

# Авторлық құқық (c) 2015 Intel корпорациясы.

#

# Рұқсат осымен кез келген адамға тегін беріледі

# осы бағдарламалық жасақтаманың және онымен байланысты құжаттама файлдарының көшірмесі (# «Бағдарламалық қамтамасыз ету»), Бағдарламалық жасақтамамен шектеусіз айналысуға, соның ішінде

# пайдалану, көшіру, өзгерту, біріктіру, жариялау құқықтары шектеусіз

# Бағдарламалық жасақтаманың көшірмелерін тарату, қосалқы лицензия беру және/немесе сату

# Бағдарламалық қамтамасыз ету берілген адамдарға рұқсат етіледі

# келесі шарттар:

#

# Жоғарыда көрсетілген авторлық құқық туралы ескерту және бұл рұқсат хабарламасы болады

# Бағдарламалық жасақтаманың барлық көшірмелеріне немесе маңызды бөліктеріне енгізілген.

#

# БАҒДАРЛАМА «БОЛҒАНДАЙ» БОЛАДЫ, ЕШҚАНДАЙ КЕПІЛДІКСІЗ, # АШЫҚТАУ ЖӘНЕ ҚОЛДАНУ, соның ішінде кепілдіктермен шектелмеген

# САУДАЛЫҚ, МАҚСАТТЫЛЫҚ ҮШІН ЖӘНЕ

# ЕМЕС. Ешқандай жағдайда авторлар мен авторлық құқықтар иелері болмайды

# Қандай да бір шағымға, зиянға немесе басқа жауапкершілікке, іс -әрекетте.

# ШАРТТЫҚ, ҚАУІПТІЛІК ЖӘНЕ БАСҚА, ШЫҒАРУ, БАСТАУ ЖӘНЕ БАЙЛАНЫСТЫ

# БАҒДАРЛАМАЛЫҚТЫҢ ЖӘНЕ ПАЙДАЛАНУ НЕМЕСЕ БАСҚА БАҒДАРЛАМАДА.

_future_ -ден импорттау_шығару_функциясы

импорт уақыты, sys, сигнал, atexit, urllib, urllib2, математика

pyupm_mpu9150 upm импортынан sensorObj ретінде

def main ():

# деректер = {}

# деректер ['magnetrometro'] = raw_input («Температураны хабарлау»)

# деректер = urlib.urlencode (деректер)

# post_request = urlib 2. Сұраныс (post_url, деректер, тақырыптар)

# тырысу:

# пост_жауап = urlib2.urlopen (пост_сұраныс)

# баспа посты_response.read ()

# ретінде URLError қоспағанда:

# басып шығару «Қате:», e.season

# 0 I2C шинасына MPU9250 енгізіңіз

сенсор = sensorObj. MPU9250 ()

## Шығу өңдеушілері ##

# Бұл функция C-Control пернесін басқанда питонның стек ізін басып шығаруын тоқтатады

def SIGINTHandler (белгі, жақтау):

SystemExit көтеріңіз

# Бұл функция шығу кезінде кодты іске қосуға мүмкіндік береді

def exitHandler ():

басып шығару («Шығу»)

sys.exit (0)

# Шығу өңдегіштерін тіркеңіз

atexit.register (exitHandler)

сигнал.сигнал (сигнал. SIGINT, SIGINTHandler)

sensor.init ()

x = sensorObj.new_floatp ()

y = sensorObj.new_floatp ()

z = sensorObj.new_floatp ()

ал (1):

sensor.update ()

sensor.getAkselerometr (x, y, z)

# басып шығару («Акселерометр»:)

# басып шығару («AX: %.4f» % sensorObj.floatp_value (x), end = '')

# басып шығару («AY: %.4f» % sensorObj.floatp_value (y), end = '')

# басып шығару («AZ: %.4f» % sensorObj.floatp_value (z))

modulo1 = (sensorObj.floatp_value (x) -0.005) ** 2+ (sensorObj.floatp_value (y) -0.0150) ** 2+ (sensorObj.floatp_value (z) -0.0450) ** 2

# басып шығару (модуль1)

modulo1 = (« %.1f» % abs (((модуль1 ** 0,5) -1)*9,8))

# басып шығару (модуль1)

#

# sensor.getGyroscope (x, y, z)

# басып шығару («Гироскоп: GX:», sensorObj.floatp_value (x), end = '')

# басып шығару («GY:», sensorObj.floatp_value (y), end = '')

# басып шығару («GZ:», sensorObj.floatp_value (z))

sensor.getMagnetometer (x, y, z)

# басып шығару («Magnetometer: MX:», sensorObj.floatp_value (x), end = '')

# басып шығару («MY:», sensorObj.floatp_value (y), end = '')

# басып шығару («MZ:», sensorObj.floatp_value (z))

modulo2 = sensorObj.floatp_value (x) ** 2+sensorObj.floatp_value (y) ** 2+sensorObj.floatp_value (z) ** 2

# басып шығару (модуль2)

modulo2 = (« %.2f» % (модуль2 ** 0,5))

# басып шығару (модуль2)

arq = ашық ('/tmp/dados.txt', 'w')

мәтін =

texto.append (str (модуль2)+«,»+str (модуль1))

arq.writelines (мәтін)

arq.close ()

# сілтеме = ('https://data.sparkfun.com/input/0lwWlyRED5i7K0AZx4JO?private_key=D6v76yZrg9CM2DX8x97B&mag='+str(modulo2))

# басып шығару ('enviando dados')

# send = urllib2.urlopen (сілтеме)

# бет = send.read ()

# басып шығару (бет)

# сілтеме = ('https://data.sparkfun.com/input/1noGndywdjuDGAGd6m5K?private_key=0mwnmR9YRgSxApAo0gDX&acel='+str(modulo1))

# басып шығару ('enviando dados')

# send = urllib2.urlopen (сілтеме)

# бет = send.read ()

# басып шығару (бет)

# басып шығару («Температура:», sensor.getTemperature ())

# басып шығару ()

# уақыт.ұйықтау (.5)

егер _ аты _ == '_ негізгі _':

негізгі ()

Жергілікті сервидор

импорт уақыты

BaseHTTPServer импорттау

HOST_NAME = '172.17.56.9' # !!! ОСЫН ӨЗГЕРТУДІ ҰМЫТПАҢЫЗ !!!

PORT_NUMBER = 80 # Мүмкін мұны 9000 деп орнатыңыз.

a = 0

MyHandler класы (BaseHTTPServer. BaseHTTPRequestHandler):

def do_HEAD (лар):

s.send_response (200)

s.send_header («Мазмұн түрі», «мәтін/html»)

s.end_headers ()

def do_GET (тер):

dados = le_dados ()

басып шығару (dados)

«» «GET сұрауына жауап беру.» «»

егер s.path == «/1»:

s.send_response (200)

s.send_header («Мазмұн түрі», «мәтін/қарапайым»)

s.end_headers ()

s.wfile.write (dados)

elif s.path == «/2»:

s.send_response (200)

s.send_header («Мазмұн түрі», «мәтін/қарапайым»)

s.end_headers ()

s.wfile.write («2»)

басқа:

s.send_response (200)

s.send_header («Мазмұн түрі», «мәтін/қарапайым»)

s.end_headers ()

s.wfile.write (dados)

#s.wfile.write («табылмады !!»)

def le_dados ():

arq = ашық ('/tmp/dados.txt', 'r')

texto = arq.readline ()

arq.close ()

мәтінді қайтару

егер _ аты _ == '_ негізгі _':

server_class = BaseHTTPServer. HTTPServer

httpd = server_class ((HOST_NAME, PORT_NUMBER), MyHandler)

басып шығару уақыты.asctime (), «Сервер басталады - %s: %s» %(HOST_NAME, PORT_NUMBER)

тырысу:

a = a+2

httpd.serve_forever ()

KeyboardInterrupt қоспағанда:

өту

httpd.server_close ()

басып шығару уақыты.asctime (), «Сервер тоқтайды - %s: %s» %(HOST_NAME, PORT_NUMBER)

Código de Execução dos Códigos anteriores жоқ Shell

#!/bin/bash

echo «mag_python бастау»

sudo python mag_python.py &

echo «серверді бастау»

sudo python server2.py

6 -қадам: Қорытынды нәтиже

Қорытынды нәтиже
Қорытынды нәтиже

Feito asoas aurasado auxiliadas aunksasadas acrassadas to a smart -projectes a dronboard 410c бағдарламасына арналған. Сервистік және жеңілдетілген қызмет көрсету жүйелік жүйелермен қамтамасыз етіледі.

Google Play қолданбасына сілтеме:

Py codigos сілтемесі:

Ұсынылған: