Агуулгын хүснэгт:

Ухаалаг хичээл: 6 алхам
Ухаалаг хичээл: 6 алхам

Видео: Ухаалаг хичээл: 6 алхам

Видео: Ухаалаг хичээл: 6 алхам
Видео: Их ч тэссэн дээ 😆😅 2024, Арваннэгдүгээр
Anonim
Ухаалаг хичээл
Ухаалаг хичээл

Ухаалаг Хичээлийн визний шалгалт нь ямар ч шаардлага хангаагүй хүмүүст зориулагдсан болно. de aula convencional.

Алхам 1: Материал

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

Dragonboard 410c програмын програмууд:

- Dragonboard 410c;

- Кабо HDMI;

-USB -ээр Teclado -USB -ээр дамжуулан хулгана -Монитор;

- Мезанин 96 самбар;

Төслийн гүйцэтгэгч:

- Dragonboard 410c;

- Мезанин 96 самбар;

- Sensor Grove IMU 10DOF MPU - 9250 (não limitado ao uso de um único sensor);

- Fonte de alimentação externa 11.1V;

- холбогч фемеа-фемеа;

Алхам 2: 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
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem

O Shield Mezzanine deve ser acoplado à placa Dragonboard 410c, 3.3V / 5V (түвшний шилжүүлэгч), мөн 1.8V хүчдэлтэй. Magnetômetro мэдрэгч MPU -9250 Grove -IMU 10DOF, ялангуяа:

Tensão de Entrada: 5V / 3.3V;

Corrente de funcionamento: 6mA;

Comunicação цуврал;

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

I2C интерфэйс;

Жишээ нь, Grove I2C0 (5V), мэдрэгчийг ашиглахын тулд цуврал болон бусад шаардлагатай цуврал харилцаа холбоог ашиглах боломжтой болно. (төсөөлөл)

Алхам 3: Integração: Unity + Vuforia

Integração: Unity + Vuforia
Integração: Unity + Vuforia

1- Нэмэлт мэдээлэл авахын тулд вэбсайт руу ороорой.

2- Нэмэлт табын зорилтот менежер нь дагах (Tracking (quanto mais complexa melhor)).

3- Feito нь Unity-ийг импортлох мэдээллийн сантай болно.

4- Ямар ч Unity тохиргоог хийхгүй байхын тулд зурагны зорилтот програмыг 3D форматаар ашиглах боломжтой болно.

5- Unicity-ийг ашиглах нь маш чухал юм.

6- Зургийн зорилтот програмыг 3D хэлбэрээр бэлтгэж, дүрсийг зорилтот бүлэг болгон бэлтгэ (pode ser a uma aula de Biologia ou Física…).

Алхам 4: Эв нэгдэл: O Android SDK -ийг тохируулна уу

Эв нэгдэл: O Android SDK -ийг тохируулна уу
Эв нэгдэл: O Android SDK -ийг тохируулна уу

1- Андройд дээр SDK-ийг ашиглах боломжтой бөгөөд Unity-ийн сонголтыг сонгоно уу.

2- Unity-ийг андроид, платформ ашиглан бүтээгээрэй.

3- Дуудлага хийх програмыг тохируулах (тохиргоог хийх боломжгүй).

Алхам 5: Criando Servidor Local E Recebendo Information Emes Python

Criando Servidor Local E Recebendo Informacões Em Python
Criando Servidor Local E Recebendo Informacões Em Python

C ++, Java, Python гэх мэт програм хангамжийн систем, програм хангамжийн програм хангамжийн програм хангамжийн програм хангамжийн програм хангамжийн програм хангамжийг ашиглах боломжтой. Програм хангамж нь хүлээн авагч, мэдрэгч, процессор, програм хангамжийн програм хангамжийн програм хангамжийн шаардлагыг хангаж өгдөг. Depois carrega эссэ нь Unity -ийн хамгийн том үүрэг гүйцэтгэгчдийн нэг юм. Жишээ нь, Phyton хэлний хэлийг ашиглах боломжтой. Dragonboard 410c програмыг Unity -ээр дамжуулан танилцуулж байна.

Seguem os códigos mag_python.py (leitor de dados do sensor), server2.py (локал сервидор), Shell -ийг гүйцэтгэх:

Código mag_python.py

#!/usr/bin/python

# Зохиогч: Жон Трулсон

# Зохиогчийн эрх (c) 2015 Intel корпораци.

#

# Зөвшөөрөл авсан бүх хүнд үнэ төлбөргүй олгодог

# энэ програм хангамж болон холбогдох баримт бичгийн файлуудын хуулбар (# "Програм хангамж"), програм хангамжийг хязгаарлалтгүйгээр зохицуулах, үүнд орно

# ашиглах, хуулах, өөрчлөх, нэгтгэх, нийтлэх эрхийг хязгаарлалтгүйгээр

# Програм хангамжийн хуулбарыг тараах, дэд лиценз олгох,/эсвэл зарах

Програм хангамжийг хангаж өгсөн хүмүүст # зөвшөөрнө

# дараах нөхцөлүүд:

#

# Дээрх зохиогчийн эрхийн мэдэгдэл ба энэхүү зөвшөөрлийн мэдэгдэл байх болно

# програм хангамжийн бүх хуулбарууд эсвэл томоохон хэсгүүдэд багтсан болно.

#

# ПРОГРАММЫГ "ХАМГИЙН ХЭРЭГТЭЙ" ХЭРЭГЖҮҮЛЖ БАЙГААГҮЙ, # ИЛГЭЭД ОРУУЛСАН, БАТАЛГААГҮЙ ХЯЗГААРГҮЙ БАЙНА.

# ХУДАЛДАА ХУДАЛДАА, ОНЦГОЙ ЗОРИЛГОД нийцэх ба

# ХЭРЭГГҮЙ. ЗОХИОН БАЙГУУЛАГЧИД, ЗОХИЦУУЛАХ ЭРХИЙГ ХЭЛЭГЧИД БОЛОХГҮЙ

# ҮЙЛ АЖИЛЛАГАА ГАРГАСАН ХЭРЭГТЭЙ ГЭМТЭЛ, Хохирол эсвэл бусад хариуцлагын хариуцлагыг хүлээнэ.

# ГЭРЭЭ, ЗӨВЛӨГӨӨ, БУСАД ЗӨВЛӨЛТ, ҮҮСЭН, ЭСВЭЛ, ХОЛБООНД ОРСОН

# ПРОГРАММЫН ХЭРЭГСЭЛ, ХЭРЭГЛЭЭ, БУСАД ХЭЛЭЛЦЭЭГЭЭР.

_future_ -аас импортлох print_function

импортын цаг, sys, дохио, atexit, urllib, urllib2, математик

pyupm_mpu9150 upm импортоос sensorObj хэлбэрээр

def main ():

# өгөгдөл = {}

# өгөгдөл ['magnetrometro'] = түүхий оролт ("Температурыг мэдээлэх")

# өгөгдөл = urlib.urlencode (өгөгдөл)

# post_request = urlib 2. Хүсэлт (post_url, өгөгдөл, толгой)

# оролдох:

# post_response = urlib2.urlopen (post_request)

# хэвлэх бичлэг_хариулт.read ()

# гэж URLError -аас бусад:

# хэвлэх "Алдаа:", e.reason

# I2C автобус 0 дээр MPU9250 -ийг шууд ажиллуулна уу

мэдрэгч = sensorObj. MPU9250 ()

## Гаргагчид гарах ##

# Энэ функц нь control-C товчлуурыг дарахад python стектрэйк хэвлэхийг зогсооно

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.getAxelerometer (x, y, z)

# хэвлэх ("Accelerometer:")

# хэвлэх ("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 (((modulo1 ** 0.5) -1)*9.8))

# хэвлэх (модуль1)

#

# sensor.getGyroscope (x, y, z)

# хэвлэх ("Gyroscope: GX:", sensorObj.floatp_value (x), end = '')

# хэвлэх ("GY:", sensorObj.floatp_value (y), end = '')

# хэвлэх ("GZ:", sensorObj.floatp_value (z))

мэдрэгч.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 (modulo2)+","+str (modulo1))

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 ())

# хэвлэх ()

# time.sleep (.5)

хэрэв _name_ == '_main_':

үндсэн ()

Codigo do Servidor Local

импортлох хугацаа

BaseHTTPServer импортлох

HOST_NAME = '172.17.56.9' # !!! ЭНЭ ӨӨРЧЛӨХИЙГ САНААРАЙ !!!

PORT_NUMBER = 80 # Үүнийг 9000 болгож тохируулсан байж магадгүй.

a = 0

MyHandler анги (BaseHTTPServer. BaseHTTPRequestHandler):

def do_HEAD (s):

s.send_response (200)

s.send_header ("Агуулгын төрөл", "текст/html")

s.end_headers ()

def do_GET (s):

dados = le_dados ()

хэвлэх (аав)

"" "GET хүсэлтэд хариу өгөх." ""

хэрэв s.path == "/1":

s.send_response (200)

s.send_header ("Агуулгын төрөл", "текст/энгийн")

s.end_headers ()

s.wfile. бичих (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. бичих (dados)

#s.wfile.write ("олдсонгүй !!")

def le_dados ():

arq = нээлттэй ('/tmp/dados.txt', 'r')

texto = arq.readline ()

arq.close ()

текстийг буцаах

хэрэв _name_ == '_main_':

server_class = BaseHTTPServer. HTTPS сервер

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

хэвлэх цаг.asctime (), "Сервер эхэлнэ - %s: %s" %(HOST_NAME, PORT_NUMBER)

оролдоно уу:

a = a+2

httpd.serve_forever ()

Keyboard тасалдалаас бусад:

дамжуулах

httpd.server_close ()

хэвлэх цаг.asctime (), "Сервер зогссон - %s: %s" %(HOST_NAME, PORT_NUMBER)

Código de Execução dos Códigos anteriores no Shell

#!/bin/bash

echo "mag_python эхэлж байна"

sudo python mag_python.py &

цуурай "сервер эхлүүлэх"

sudo python server2.py

Алхам 6: Эцсийн дүн

Үр дүнгийн финал
Үр дүнгийн финал

Feito isso is a aulas poderão ser auxiliadas as a one of the one of the one of the smart ders is a desenvolvido com to a Dragonboard 410c. Сервиндо ба пропорционал ба системүүд нь ямар ч системээр тоноглогдоогүй болно.

Google Play -гүй програмыг LINK хийх:

Py codigos -ийн линк:

Зөвлөмж болгож буй: