Criou página com '= Conceito = Descrição minuciosa das características do programa proposto, pormenorização com detalhes técnicos e precisos que esclareçam a destinação. Identificar s...'
 
 
(9 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
= Conceito =
= Conceito =
Descrição minuciosa das características do programa proposto, pormenorização com detalhes técnicos e precisos que esclareçam a destinação. Identificar se gera um produto, um serviço ou um processo. Incluir definições, concepções ou caracterizações
Programação na robótica é utilizada nos comandos e instruções que o protótipo escolhido deve executar. São comandos realizados através das linguagens de programação, que permite a criação das funções. As funcionalidades são guardadas em microcontroladores (circuitos integrado que são programáveis, ou seja, a programação do protótipo é armazenada na memória do microcontrolador), que basicamente é utilizada na entrada (computador) , a programação (memória) e a saída (comando).  
 
<br>
<br>


= Softwares =
= Softwares =
  Descrever os softwares usados para esta finalidade. Detalhar, se existir, linguagens, banco de dados e frameworks.  
'''Microsoft Robotics Studio''', é um software criado pela Microsoft,utilizado para simular e controlar robôs. Permite interagir com os robôs mediante de interfaces baseada em web ou pelo próprio Windows. A comunicação está baseada em mensagens, permitindo a comunicação entre módulos. É utilizada em protótipos com sensores. Permite as linguagens IronPhyton, Visual C# , Visual Basic e Microsoft Visual Studio Express.
 
'''Arduino IDE''' é uma aplicação que introduz  a programacao a pessoa não familiarização com a parte de desenvolvimento de software. Carrega e compila  para a placa de forma rápida. Aceita a linguagem c, c++. Definindo apenas apenas a entrada e saída.
 
<br>
<br>


= Código =
= Código =
<syntaxhighlight lang="python3">
Arquivo = "lista_contatos.txt" # Nome do arquivo


def ler_arquivo():              # Função que le o arquivo de texto
// define LED_PIN 13
     try:                        # Tratamento de erro
int LED_PIN = 13;
        arq = open(Arquivo,"r+") # Abre o arquivo para leitura
void setup ()  
        print( '\n'+arq.read() ) # Quebra linha e mostra o conteudo
     pinMode (LED_PIN, OUTPUT);    // habilita o pino 13 para saída digital (OUTPUT).}void loop () {
        arq.close()             # Fecha o arquivo
    digitalWrite (LED_PIN, HIGH);  // liga o LED.
     except IOError:              # Tratamento de erro
    delay (1000);                  // espera 1 segundo (1000 milissegundos).
        print('\nArquivo não encontrado!')
    digitalWrite (LED_PIN, LOW);  // desliga o LED.
     delay (1000);                  // espera 1 segundo.


def escrever_linhas(texto):        # Função que le e escreve no arquivo
    try:                          # Tratamento de erro
        arq = open(Arquivo,"a+")  # Abre o arquivo para gravação no final do arquivo
        arq.writelines('\n'+texto) # Escreve no arquivo o parametro 'texto'
        arq.close()                # Fecha o arquivo
        print('\nLinha gravada com sucesso')
    except IOError:                # Tratamento de erro
        print('\nErro ao abrir o arquivo!') # Mostra na tela uma mensagem de erro


def pesquisar_contato(nome):
const int led = 7;
    try:
const int botao = 10;
        arq = open(Arquivo, "r+")
void setup()
        dicionario = {'nome':'', 'telefone':'', 'email':''}
{
        achei = False
pinMode(led, OUTPUT);
        # lógica ler arquivo e comparar nome
pinMode(botao, INPUT);
        for cont, s in enumerate(arq.readlines()):
digitalWrite(botao, HIGH); // Ativa resistor pull-up
           
}
            dicionario['nome'], dicionario['telefone'],dicionario['email'] = s.split(' - ')
void loop()
            if dicionario['nome'] == nome:
{
                print(cont)
int valor = digitalRead(botao);
                print('Nome: %s'% dicionario['nome'])
                print('Telefone: %s'% dicionario['telefone'])
                print('Email: %s'% dicionario['email'])
                achei = True
               
        if not achei:
            print('Não existe %s' % (nome))


       
if (valor == HIGH) {
        # se achou imprime, se não mostra uma mensagem de nao encontrado
digitalWrite(led, HIGH); // Acende o led
}
else {
digitalWrite(led, LOW); // Apaga o led
}
}


        arq.close
<br>
       
    except IOError:
        print('\nContato não encontrado')


= Diagrama de Casos de Uso =
[[Arquivo:DIAGRAMA1.png]]


def excluir_contatos():
[[Arquivo:DIAGRAMA2.png]]
    try:
        arq =open('lista_contatos.txt','r+')
        valores = arq.readlines()
        l = []
        splited =[]
        nome = input('Entre com um nome:')
        for x in valores:
            splited=x.split(' - ')
            if splited[0]==nome:
              pass
            else:
                l.append(splited)
       
        arq.close()
        novo_cadastro(l)
    except:
        print('erro')
def novo_cadastro(l):
    arq = open(Arquivo,'w')
    for x in l:
        #print("Nome:%s | Telefone:%s | Email:%s"%(x[0],x[1],x[2]))
        arq.write("%s - %s - %s" %(x[0],x[1],x[2]))
    arq.close()


while(True):
<br>
   
    print('\n        Opcões:')
    print(' ')
    print('1 - Cadastrar contato')
    print('2 - Listar dados')
    print('3 - Pesquisar contato')
    print('4 - Excluir contato')
    print('9 - Sair')
    print(' ')
    Op = int(input('Digite a opção desejada:')) # Entrada da opcao pelo teclado


    if Op == 1:                                    # Se a opcao for 1
= Interações com as tecnologias =
        nome = input('\nDigite o nome do contato:')      # Entrada do nome pelo teclado
 
        fone = input('Digite o número do telefone:')# Entrada do telefone pelo teclado
'''Arduino:''' http://www.sourceinnovation.com.br/wiki/Tecnologia_Ardu%C3%ADno
        email = input('Digite o email:')            # Entrada do telefone pelo teclado
 
        contato = (nome+' - '+fone+' - '+email)    # Recebe o nome + o telefone
'''Inteligencia ArtIficial:'''
        escrever_linhas(str(contato))              # Chama a função que grava em arquivo
https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_artificial
    elif Op == 2:                                   # Se a opcao for 2
 
        ler_arquivo()                              # Chama a função que le o arquivo
'''Sensores:'''
    elif Op == 9:                                   # Se a opcao for 0
http://www.sourceinnovation.com.br/wiki/Sensores
        break                                      # Quebra o laço infinito
    elif Op == 3:
        nome = input("Digite o nome: ")
        pesquisar_contato(nome)
    elif Op == 4:
        #nome = input ("Digite o nome: ")
        excluir_contatos()
</syntaxhighlight>
Dar um exemplo de um código-fonte que mostre alguma parte da aplicação final. O código deverá ser curto mas que o leitor consiga enxergar para que serve. Pode-se usar comentários no programa.
<br>


= Diagrama de Casos de Uso =
Desenhar ou plotar  os requisitos funcionais de uma aplicação.
<br>


= Interações com as tecnologias =
Incluir links (internos ou externos) temas que tem relação com este, explicando detalhes sobre. Limite de 3 internos e 2 externos.
<br>
<br>


= Informações adicionais =
= Informações adicionais =
Descrever detalhes a mais sobre esse tema.
 
Na robótica, o conceito de IA torna-se forte. A necessidade de desenvolver protótipos mais próximos ao comportamento do ser humano, como raciocinar, tomar decisões para resolver problemas, é buscado nesse ramo da computação.
 
Sensores é gigantesca nessa área. Como são objetos programáveis, deve implementar algo para a orientação, no caso, os sensores são úteis.
 
<br>
<br>


= Referências bibliográficas =
= Referências bibliográficas =
Relacionar aqui as referências bibliográficas no padrão ABNT.  
 
Bases de procura: Artigos, publicações acadêmicas, revistas e sites de fornecedores
'''Software Livre para aplicações em Robótica''', 2010. Disponível em [Internet]:
<https://pt.slideshare.net/lugalagoas/software-livre-para-aplicaes-em-robtica> Acesso em: 12/10/17
 
WIKIPÉDIA – '''Microcontrolador''', 2017. Disponível em: [Internet]:
<https://es.wikipedia.org/wiki/Microcontrolador#Entradas_y_salidas_de_pop.C3.B3sito_general> Acesso em: 12/10/2017
 
WIKIPÉDIA – '''Inteligência Artificial''', 2017. Disponível em: [Internet]:
<https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_artificial> Acesso em: 12/10/17
 
<br>
<br>

Edição atual tal como às 19h23min de 16 de outubro de 2017

Conceito

Programação na robótica é utilizada nos comandos e instruções que o protótipo escolhido deve executar. São comandos realizados através das linguagens de programação, que permite a criação das funções. As funcionalidades são guardadas em microcontroladores (circuitos integrado que são programáveis, ou seja, a programação do protótipo é armazenada na memória do microcontrolador), que basicamente é utilizada na entrada (computador) , a programação (memória) e a saída (comando).


Softwares

Microsoft Robotics Studio, é um software criado pela Microsoft,utilizado para simular e controlar robôs. Permite interagir com os robôs mediante de interfaces baseada em web ou pelo próprio Windows. A comunicação está baseada em mensagens, permitindo a comunicação entre módulos. É utilizada em protótipos com sensores. Permite as linguagens IronPhyton, Visual C# , Visual Basic e Microsoft Visual Studio Express.

Arduino IDE é uma aplicação que introduz a programacao a pessoa não familiarização com a parte de desenvolvimento de software. Carrega e compila para a placa de forma rápida. Aceita a linguagem c, c++. Definindo apenas apenas a entrada e saída.


Código

// define LED_PIN 13 int LED_PIN = 13; void setup ()

   pinMode (LED_PIN, OUTPUT);     // habilita o pino 13 para saída digital (OUTPUT).}void loop () {
   digitalWrite (LED_PIN, HIGH);  // liga o LED.
   delay (1000);                  // espera 1 segundo (1000 milissegundos).
   digitalWrite (LED_PIN, LOW);   // desliga o LED.
   delay (1000);                  // espera 1 segundo.


const int led = 7; const int botao = 10; void setup() {

pinMode(led, OUTPUT);
pinMode(botao, INPUT);
digitalWrite(botao, HIGH); // Ativa resistor pull-up

} void loop() {

int valor = digitalRead(botao);
if (valor == HIGH) {
digitalWrite(led, HIGH); // Acende o led
}
else {
digitalWrite(led, LOW); // Apaga o led
}

}


Diagrama de Casos de Uso


Interações com as tecnologias

Arduino: http://www.sourceinnovation.com.br/wiki/Tecnologia_Ardu%C3%ADno

Inteligencia ArtIficial: https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_artificial

Sensores: http://www.sourceinnovation.com.br/wiki/Sensores



Informações adicionais

Na robótica, o conceito de IA torna-se forte. A necessidade de desenvolver protótipos mais próximos ao comportamento do ser humano, como raciocinar, tomar decisões para resolver problemas, é buscado nesse ramo da computação.

Sensores é gigantesca nessa área. Como são objetos programáveis, deve implementar algo para a orientação, no caso, os sensores são úteis.


Referências bibliográficas

Software Livre para aplicações em Robótica, 2010. Disponível em [Internet]: <https://pt.slideshare.net/lugalagoas/software-livre-para-aplicaes-em-robtica> Acesso em: 12/10/17

WIKIPÉDIA – Microcontrolador, 2017. Disponível em: [Internet]: <https://es.wikipedia.org/wiki/Microcontrolador#Entradas_y_salidas_de_pop.C3.B3sito_general> Acesso em: 12/10/2017

WIKIPÉDIA – Inteligência Artificial, 2017. Disponível em: [Internet]: <https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_artificial> Acesso em: 12/10/17