collapse collapse

* Links de Robótica

* Posts Recentes

Identificar 2 componentes por almamater
[24 de Julho de 2025, 23:58]


+ LASERs por dropes
[16 de Julho de 2025, 12:38]


Cerca eléctrica por SerraCabo
[14 de Junho de 2025, 23:26]


Alguém arranja motores? por almamater
[10 de Junho de 2025, 22:34]


Condensador 4.7uF 0603 por brunus
[09 de Junho de 2025, 15:52]


Lenovo IdeaPad 3 Não liga por jm_araujo
[07 de Maio de 2025, 19:10]


Identificar Diodo Zenner por filjoa
[01 de Maio de 2025, 23:07]


Meu novo robô por dropes
[18 de Março de 2025, 14:51]


JBL partybox On-The-Go por almamater
[21 de Fevereiro de 2025, 23:32]


Talking Reverse Engineering with an Absolute Legend! por SerraCabo
[13 de Fevereiro de 2025, 09:56]

* LusoRobótica - Robótica em Portugal

A robótica é uma das ciências mais desafiantes. A perfeita fusão harmoniosa entre um sem fim número de ciências faz da robótica um excelente desafio, que nos convida a imergir neste grandioso mundo da tecnologia, e utilizar a construção de robots como uma forma única de explorar todas as ideias que nos surgem no dia-a-dia.

Junta-te a nós e aprende como a robótica pode mudar a maneira como observas o mundo. Ajuda-nos a desmistificar a robótica em Portugal!
22 de Julho de 2009, 19:46 por microbyte | Visualizações: 26375 | Comentários: 21

Aqui está um vídeo que fiz para os iniciantes ao Arduino. Disponível também em HD.



Digam de vossa justiça.

http://ricardo-dias.com/pt-pt/node/91
20 de Julho de 2009, 17:33 por Fifas | Visualizações: 12294 | Comentários: 6

Boas.

Tal como muitos, tambem  tenho um LCD destes  ;D.

Hoje andei a fazer umas brincadeiras com ele e uma das coisas que fiz, foi mostrar os RSS Feeds do LusoRobótica.  :)




O processo para fazer isto é muito simples.

Caso não saibam como ligar o LCD, dêm uma vista de olhos neste tópico.
http://lusorobotica.com/index.php/topic,919.0.html

Vamos necessitar agora do LCD Smartie ( http://lcdsmartie.sourceforge.net/ )

Para que o LCD Smartie envie os dados para serem utilizados neste tipo de LCDs  (16x2 Paralelo 4 Bits/8Bits) é necessário entrar em Setup, em Display Settings seleccionar como plugin "matrix.dll", e em startup parameters escolher a porta  do arduino e velocidade de comunicação (neste caso, 19200) . Na tab de baixo (Screen) escolher 2x16 ou então, a medida que quiserem para o vosso LCD.

Agora no arduino, vamos colocar este código:
Código: [Seleccione]
#include <LiquidCrystal.h>

// LiquidCrystal display with:
// rs on pin 12
// rw on pin 11 --------connected to GND (not used)
// enable on pin 10
// d4, d5, d6, d7 on pins 5, 4, 3, 2
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);

void setup() {
   
  lcd.clear();
  lcd.print("**LCD  SMARTIE**");
  delay(4000);
  Serial.begin(19200);
}

byte serial_getch(){
 
  int incoming; 
  while (Serial.available()==0){}
  // read the incoming byte:
  incoming = Serial.read();
  return (byte) (incoming &0xff);
}

void loop(){
 
  byte rxbyte;
  byte temp;
 
  rxbyte = serial_getch();

  if (rxbyte == 254) //Matrix Orbital uses 254 prefix for commands
        {
                switch (serial_getch())
                {
                        case 66: //backlight on (at previously set brightness)
                                // not implemented                               

                                break;
                        case 70: //backlight off
                                // not implemented                               
                                break;
                        case 71:  //set cursor position
                                temp = (serial_getch() - 1);  //get column byte
                                switch (serial_getch())  //get row byte
                                {
                                        //line 1 is already set up
                                        case 2:
                                                temp += 0x40;
                                                break;
                                        case 3:
                                                temp += 0x14;
                                                break;
                                        case 4:
                                                temp += 0x54;
                                                break;
                                        default:
                                                break;
                                }
                                lcd.command(0b10000000 + temp);
                                break;
                        case 72:  //cursor home (reset display position)
                                lcd.command(2);
                                break;
                        case 74:  //show underline cursor
                                lcd.command(0b00001110);
                                break;
                        case 75:  //underline cursor off
                        case 84:  //block cursor off
                                lcd.command(0b00001100);
                                break;
                        case 76:  //move cursor left
                                lcd.command(16);
                                break;
                        case 77:  //move cursor right
                                lcd.command(20);
                                break;
                        case 78:  //define custom char
                                lcd.command(64 + (serial_getch() * 8));  //get+set char address
                                for (temp = 7; temp != 0; temp--)
                                {
                                        lcd.print(serial_getch()); //get each pattern byte
                                }
                                break;
                        case 83:  //show blinking block cursor
                                lcd.command(0b00001111);
                                break;
                        case 86:  //GPO OFF
                                //implement later
                                break;
                        case 87:  //GPO ON
                                /*temp = serial_getch();
                                if (temp == 1)
                                {
                                        GPO1 = GPO_ON;
                                }*/
                                break;
                        case 88:  //clear display, cursor home
                                lcd.command(1);
                                break;
                        case 152: //set and remember (doesn't save value, though)
                        case 153: //set backlight brightness
                                //not implemented
                                break;

                        //these commands ignored (no parameters)
                        case 35: //read serial number
                        case 36: //read version number
                        case 55: //read module type
                        case 59: //exit flow-control mode
                        case 65: //auto transmit keypresses
                        case 96: //auto-repeat mode off (keypad)
                        case 67: //auto line-wrap on
                        case 68: //auto line-wrap off
                        case 81: //auto scroll on
                        case 82: //auto scroll off
                        case 104: //init horiz bar graph
                        case 109: //init med size digits
                        case 115: //init narrow vert bar graph
                        case 118: //init wide vert bar graph
                                break;
                        default:
                                //all other commands ignored and parameter byte discarded
                                temp = serial_getch();  //dump the command code
                                break;
                }
                return;
        } //END OF COMMAND HANDLER

        //change accented char to plain, detect and change descenders
        //NB descenders only work on 5x10 displays. This lookup table works
        //  with my DEM-20845 (Display Elektronik GmbH) LCD using KS0066 chip.
        switch (rxbyte)
        {
                //chars that have direct equivalent in LCD charmap
/*                case 0x67: //g
                        rxbyte = 0xE7;
                        break;
                case 0x6A: //j
                        rxbyte = 0xEA;
                        break;
                case 0x70: //p
                        rxbyte = 0xF0;
                        break;
                case 0x71: //q
                        rxbyte = 0xF1;
                        break;
                case 0x79: //y
                        rxbyte = 0xF9;
                        break;
*/                case 0xE4: //ASCII "a" umlaut
                        rxbyte = 0xE1;
                        break;
                case 0xF1: //ASCII "n" tilde
                        rxbyte = 0xEE;
                        break;
                case 0xF6: //ASCII "o" umlaut
                        rxbyte = 0xEF; //was wrong in v0.86
                        break;
                case 0xFC: //ASCII "u" umlaut
                        rxbyte = 0xF5;
                        break;

                //accented -> plain equivalent
                //and misc symbol translation
                case 0xA3: //sterling (pounds)
                        rxbyte = 0xED;
                        break;
/*                case 0xB0: //degrees symbol
                        rxbyte = 0xDF;
                        break;
*/                case 0xB5: //mu
                        rxbyte = 0xE4;
                        break;
                case 0xC0: //"A" variants
                case 0xC1:
                case 0xC2:
                case 0xC3:
                case 0xC4:
                case 0xC5:
                        rxbyte = 0x41;
                        break;
                case 0xC8: //"E" variants
                case 0xC9:
                case 0xCA:
                case 0xCB:
                        rxbyte = 0x45;
                        break;
                case 0xCC: //"I" variants
                case 0xCD:
                case 0xCE:
                case 0xCF:
                        rxbyte = 0x49;
                        break;
                case 0xD1: //"N" tilde -> plain "N"
                        rxbyte = 0x43;
                        break;
                case 0xD2: //"O" variants
                case 0xD3:
                case 0xD4:
                case 0xD5:
                case 0xD6:
                case 0xD8:
                        rxbyte = 0x4F;
                        break;
                case 0xD9: //"U" variants
                case 0xDA:
                case 0xDB:
                case 0xDC:
                        rxbyte = 0x55;
                        break;
                case 0xDD: //"Y" acute -> "Y"
                        rxbyte = 0x59;
                        break;
/*                case 0xDF: //beta  //mucks up LCDSmartie's degree symbol??
                        rxbyte = 0xE2;
                        break;
*/                case 0xE0: //"a" variants except umlaut
                case 0xE1:
                case 0xE2:
                case 0xE3:
                case 0xE5:
                        rxbyte = 0x61;
                        break;
                case 0xE7: //"c" cedilla -> "c"
                        rxbyte = 0x63;
                        break;
                case 0xE8: //"e" variants
                case 0xE9:
                case 0xEA:
                case 0xEB:
                        rxbyte = 0x65;
                        break;
                case 0xEC: //"i" variants
                case 0xED:
                case 0xEE:
                case 0xEF:
                        rxbyte = 0x69;
                        break;
                case 0xF2: //"o" variants except umlaut
                case 0xF3:
                case 0xF4:
                case 0xF5:
                case 0xF8:
                        rxbyte = 0x6F;
                        break;
                case 0xF7: //division symbol
                        rxbyte = 0xFD;
                        break;
                case 0xF9: //"u" variants except umlaut
                case 0xFA:
                case 0xFB:
                        rxbyte = 0x75;
                        break;
                default:
                        break;
        }

        lcd.print(rxbyte);  //otherwise a plain char so we print it to lcd
        return;

}

Citar
Esta parte do post é da autoria do delphi, aqui:  http://lusorobotica.com/index.php/topic,919.msg9532.html#msg9532

Agora vamos configurar o LCD Smartie para apresentar as nossas Feeds.

Abrimos o LCD Smartie e clicamos em Setup

Vai aparecer esta janela:


Agora, no ponto 1 vamos meter o código para o plugin das RSS e o link do LR:
Código: [Seleccione]
$Rss(http://feeds.feedburner.com/lusorobtica,t,1)
No ponto 2 igual, mas com a 2ª feed:
Código: [Seleccione]
$Rss(http://feeds.feedburner.com/lusorobtica,t,2)

Qualquer dúvida, estou cá para ajudar :D

15 de Julho de 2009, 15:13 por lobo | Visualizações: 17453 | Comentários: 12

Workshop Impressão 3D*

Em Outubro a associação cultural Audiência Zero vai organizar um Workshop de Impressão 3d orientado por Zach 'Hoeken' Smith (RepRap / MakerBot / Sanguino). O workshop, que será em inglês, terá lugar em Lisboa, em lugar a anunciar brevemente e contará com uma duração de 58h em duas semanas. Mais info: http://www.audienciazero.org/cct/3dprinting/


O Workshop

O objectivo do workshop é a construção e utilização de uma impressora 3D open source. Os participantes irão construir a máquina de raiz: desde dos componentes electrónicos e extrusor, passando pela mecânica, até à montagem final.

Irão ainda adquirir e aperfeiçoar aptidões nas áreas de electrónica, mecânica, modelação 3D e fabricação digital. O workshop será ainda um lugar privilegiado para adquirir conhecimentos sobre os mais diversos tópicos, como teoria da electrónica, design de firmware, engenharia mecânica, protocolos de série, e desenho 3D.


Datas e Horários

De 19 de Outubro a 1 de Novembro de 2009
Lisboa (espaço a anunciar)

19:30 às 22:30 (à semana)
11:00 às 19:00 (fim-de-semana)

Duração de 58h


Links

http://www.makerbot.com/
http://www.audienciazero.org/cct/3dprinting/


* A impressão 3D é uma forma original de impressão, no âmbito da tecnologia de prototipagem, em que um objecto tridimensional é criado a partir da acumulação de camadas sucessivas de um dado material (Wikipedia).
Páginas: 1 ... 102 103 [104] 105 106 ... 187

* Quem está online

  • user Google

* Estatística LusoRobótica

  • stats Total de Membros: 4.072
  • stats Total de Mensagens: 106.833
  • stats Total de Tópicos: 9.101
  • stats Total de Categorias: 8
  • stats Total de Quadros: 71
  • stats Recorde utilizadores online: 1.666