3. Scratch: Característiques
Scratch <- Squeak (Smalltalk-80)
programari gratuït (descàrrega, còpia i utilització)
paraula i logo copyright
codi font disponible (llicència específica)
projectes i materials de suport CC by-sa 2.0
MULTIPLATAFORMA: Windows, Mac OS X (i Linux)
en català i molts altres idiomes
comunitat d'usuaris i comunitat d'educadors
xarxa social per compartir projectes
7. Scratch: Galeries d'exemples
8 exemples de cada tipus:
Animation
Games
Greetings
Interactive Art
Music and Dance
Names
Sensors and Motors
Simulations
Speak Up
Stories
12. Scratch: Avantatges i inconvenients
molts materials
xarxa social de projectes
però en anglès
fòrums
intuïtiu
divertit
programació visual:
resultats immediats
Animacions, efectes i interactivitat molt senzilles
personalització:
imatges (sprites) amb webcam
sons (veus) amb micròfon
16. Scratch: Aplicació a l'aula
OP informàtica 4t ESO:
tema final: Introducció a la programació -programació de jocs-
1 tema de 8 (mig trimestre)
3 hores setmanals
OPs modalitat científico-tecnològica BAT LOE
Electrònica, Programació i Robòtica
1 trimestre (2n)
2 hores setmanals
Informàtica
???
17. Scratch: Sensor Board
Blocs específics:
Valor del sensor
Sensor activat?
Sensors:
Llum
Sons
Botó
Lliscador
4 connectors sensors resistius
Fabricants:
PicoBoard <- Picocricket (50US$ + 15US$ env.)
PicoCAT <- Robolot (IES SEP La Garrotxa)
Altres opcions
LEGO WeDo
19. Arduino: Característiques
Microcontrolador programable
Maquinari lliure
Programari lliure
MULTIPLATAFORMA: Windows, Mac OS X i Linux
Comunitat d'usuaris internacional i en espanyol
Facilitat de connexió
Facilitat de programació
20. Arduino: Placa i programa
Placa controladora per connectar sensors i actuadors
Programació de la placa des d'un ordinador
Funcionament independent de l'ordinador
21. Arduino: Avantatges i inconvenients
facilitat de connexió a diferents tipus de sensors
adaptabilitat (E/S) amb "shields"
barat (placa 20 - 25€)
petit
programació amb llenguatge similar a C (anglès)
dispersió de documentació
inicialment "massa" possibilitats i versions
poc robust
adquisició per internet
23. Arduino: Placa Duemilanove
Preu: aprox 22€
Dimensions: aprox 7 x 5,5 cm
Microcontrolador: ATmega168 (ATmega328)
Alimentació 5V (USB o bé connector: 6-20V)
E/S digitals: 14 (6 amb sortida PWM, màx 40mA)
Entrades analògiques: 6
Memòria programa (Flash) 16 KB (-2KB pel bootloader)
SRAM: 1 KB
EEPROM: 512 bytes
Rellotge: 16 MHz
USB (programació i comunicació amb l'ordinador)
24. Arduino: Plaques
Versions oficials:
Duemilanove (estàndard actual)
Diecimila (estàndard anterior)
Mega (més potent: velocitat i E/S)
Bluetooth (sense fils)
LilyPad (per a cosir a la roba)
Fio (Xbee, LiPo: connector i carregador)
Mini (miniatura, RS232, compatible breadboard)
Pro (barat, incrustable en un projecte)
Pro Mini (barat i petit)
Serial (RS232)
Serial Single Sided (RS232, fabricar i muntar a mà)
25. Arduino: Shields
Plaques que es connecten a sobre de la placa Arduino per
afegir major capacitat a la placa base:
Motors (U, I elevades), pas a pas, servo, cod rotació..
Pantalles LCD
Major nombre d'E/S digitals i analògiques
Ethernet
Xbee (sense fils)
Bluetooth
GPS
RFID
Memòries SD (flash)
Generadors sons
Prototips soldables o bé breadboard
26. Arduino: Clons i derivats
Plataforma lliure (programari) i
maquinari:
Freeduino
Boarduino
BareBones
Paperduino
...
Sanguino
32. Fritzing: Programa
3 vistes: Protoboard, Esquema i PCB
Calaix de parts (components)
Auto-enrutament de connexions
Anotacions
Compartició de projectes a internet
Editor per dissenyar nous components
36. Fritzing: Avantatges i inconvenients
Programa traduït al castellà
Biblioteca de projectes disponibles lliures
Vista “breadboard” imprimible a escala 1:1
No és un simulador
Biblioteca de components inicialment limitada
37. Scratch i Arduino
dues eines per a l'ensenyament
de la tecnologia
Disponible en línia a:
http://www.slideshare.net/aubieto/scratch-i-arduino/
Antoni Ubieto
antoni.ubieto@gmail.com
INS Lluís de Peguera
Manresa
Editor's Notes
Bo n dia. Em dic Antoni Ubieto i treballo a l'institut Lluís de Peguera de Manresa, dins el departament de tecnologia. En aquest taller us vull presentar dues eines, que potser coneixeu, que poden ser molt útils per la matèria. Arduino és una plataforma per a fer circuits electrònics programables, i Scratch és un entorn visual per a l'aprenentatge de la programació d'ordinadors. Poden semblar dos eines inconnexes, però la realitat és que es poden interconnectar. Anem a veure doncs cada una d'elles, quina relació hi pot haver i com les he utilitzat a l'aula.
IMAGINA PROGRAMA COMPARTEIX Aquestes són les paraules que inspiren l'Scratch: un llenguatge de programació que fa fàcil la creació dhistòries interactives, animacions, jocs, música i art; i també permet la compartició amb altres d'aquestes creacions a la web. A medida que los jóvenes crean y comparten proyectos realizados en Scratch, aprenden importantes ideas matemáticas y computacionales; al mismo tiempo que aprenden a pensar creativamente, a razonar sistemáticamente y a trabajar colaborativamente Scratch is developed by the Lifelong Kindergarten Group at the MIT Media Lab, with financial support from the National Science Foundation, Microsoft, Intel Foundation, Nokia, Iomega and MIT Media Lab research consortia. Estiu 2007 Mitchel Restnick
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
L'Scratch és, d'entrada, un programa d'ordinador que permet als alumnes fer programes d'una manera molt visual: arrossegant icones. Interfície gràfica senzilla. Aquests programes -squetch- controlen les accions i el comportament de dibuixos -sprite- sobre un escenari -stage-. A més d'aquest entorn de programació, l'Scratch és també una web, on els usuaris que s'inscriuen poden publicar els seus projectes, que es poden executar sobre el mateix navegador, i poden descarregar els projectes d'altres usuaris, per analitzar-los, modificar-los i millorar-los. Anem a veure-ho per parts. Cal veure: http://en.wikipedia.org/wiki/Scratch_programming_language
L'Scratch és, d'entrada, un programa d'ordinador que permet als alumnes fer programes d'una manera molt visual: arrossegant icones. Interfície gràfica senzilla. Aquests programes -squetch- controlen les accions i el comportament de dibuixos -sprite- sobre un escenari -stage-. A més d'aquest entorn de programació, l'Scratch és també una web, on els usuaris que s'inscriuen poden publicar els seus projectes, que es poden executar sobre el mateix navegador, i poden descarregar els projectes d'altres usuaris, per analitzar-los, modificar-los i millorar-los. Anem a veure-ho per parts. Cal veure: http://en.wikipedia.org/wiki/Scratch_programming_language
L'Scratch és, d'entrada, un programa d'ordinador que permet als alumnes fer programes d'una manera molt visual: arrossegant icones. Interfície gràfica senzilla. Aquests programes -squetch- controlen les accions i el comportament de dibuixos -sprite- sobre un escenari -stage-. A més d'aquest entorn de programació, l'Scratch és també una web, on els usuaris que s'inscriuen poden publicar els seus projectes, que es poden executar sobre el mateix navegador, i poden descarregar els projectes d'altres usuaris, per analitzar-los, modificar-los i millorar-los. Anem a veure-ho per parts. Cal veure: http://en.wikipedia.org/wiki/Scratch_programming_language
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
El principal avantange, des del punt de vista d'ensenyants, és que l'Scratch s'ha creat amb l'objectiu de facilitar l'aprenentage de la progamació als nens. L'inconvenient, sí és que n'hi ha algún, pot ser que la major part de comunitat Scratch utilitza l'anglès. Més tard veurem que també comença a haver-hi usuaris en llengua catalana.
Una dada: el nombre de projectes carregats pels usuaris a la web de l'Scratch s'acosta al milió.
Materials per treballar amb els alumnes: D209 curs telemàtic XTEC: nivell massa elevat per alumnes. “Scratch for dummies” de l'usuari technoguyx: 9 projectes scratch que són una presentació i aplicació dels diferents grups de blocs. Aprendre practicant. Comportament bàsic de cada bloc. Els alumnes han d'anar descobrint el comportament dels blocs similars (constructivisme) i fer projectes més complexos. A partir de cada presentació els alumnes han de fer 1 o 2 projectes ben definits que realitzen l'aplicació directa dels blocs que han vist. Quan s'ha treballat uns quants grups de blocs es planteja un parell de projectes més extensos que han de combinar-los. Si hi ha alumnes que han adquirit el nivell adequat es pot plantejar un projecte “lliure”. De tota manera s'ha de fer un seguiment proper a aquest projecte, normalment retallant possibilitats per tal que l'alumnat arribi a acabar el seu projecte i no es quedi frustrat amb un programa inacabat. En l'optativa d'electrònica, programació i robòtica, una vegada s'han assolit els conceptes bàsics s'ha de treballar amb pseudocodi i diagrames de flux per posteriorment poder treballar amb un llenguatge de programació en un entorn de text.
Hola! Al Centre m'han demanat si es pot engegar automàticament una activitat d'Scratch en un ordinador Windows. Doncs sí! 1. Obriu la llibreta i feu un arxiu de text amb l'ordre: &quot;C:Archivos de ProgramaScratchScratch.exe&quot; &quot;C:Archivos de ProgramaScratchScratch.image&quot; presentation &quot;C:Archivos de ProgramaScratchProjectsAnimation1 Playground.sb&quot; en una sola línia ... (la darrera part és l'activitat que vulgueu obrir). 2. Un cop guardat l'arxiu de text canvieu-li l'extensió .txt per .cmd 3. Doble clic sobre el vostre arxiu i tindreu l'activitat funcionant a pantalla completa! Això pot permetre fins i tot engegar l'activitat a una hora concreta, cosa que dóna moltes possibilitats, especialment si es té una tarja de sensors ... (la idea no és meva, és d'un company) ... Nota: No feu servir caràcters accentuats per indicar els noms de les activitats, ja que la llibreta de Windows no guardaria bé l'arxiu de comandes cmd que necessiteu. A reveure, Josep Pujadas i Jubany Professor de Tecnologia Coordinador TIC de www.bellera.cat (des 1998-99)
Traduint més o menys fidelment la documentació oficial: L'Arduino és una plataforma LLIURE per fer prototips electrònics, i es basa en components i programes flexibles i fàcils d'usar. Està dirigida a artistes, dissenyadors, aficionats i qualsevol persona interessada en la creació d'objectes o ambients interactius. Arduino pot percebre el medi ambient mitjançant la recepció de les aportacions d'una varietat de sensors i pot afectar al seu entorn per les llums de control, motors i altres actuadors. El microcontrolador de la placa està programat utilitzant el llenguatge de programació Arduino (basat en el cablejat) i l'entorn de desenvolupament Arduino (basat en Processing). projectes Arduino pot ser independent o es poden comunicar amb el programari en què s'executen en un ordinador (per exemple, Flash, Processing, MaxMSP). Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is programmed using the Arduino programming language (based on Wiring ) and the Arduino development environment (based on Processing ). Arduino projects can be stand-alone or they can communicate with software on running on a computer (e.g. Flash, Processing, MaxMSP). The Arduino team is composed of Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, and David A. Mellis.
Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments. Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is programmed using the Arduino programming language (based on Wiring ) and the Arduino development environment (based on Processing ). Arduino projects can be stand-alone or they can communicate with software on running on a computer (e.g. Flash, Processing, MaxMSP).
inicialment no han de sortir les característiques a continuació s'enfosqueix la foto i surten les característiques a sobre
inicialment no han de sortir les característiques a continuació s'enfosqueix la foto i surten les característiques a sobre
inicialment no han de sortir les característiques a continuació s'enfosqueix la foto i surten les característiques a sobre
Shields are boards that can be plugged on top of the Arduino PCB extending its capabilities. The different shields follow the same philosophy as the original toolkit: they are easy to mount, and cheap to produce.
Mignon Game Kit - minimal game console with dot-matrix-display and Arduino-library (Germany) rDuino LEDHead - ATmega644P with RTC and 8 on-board LEDs (Canada) ArduPilot , Arduino-compatible autopilot (USA) Blimpduino , Arduino-compatible robotic blimp controller board (USA) ArduStation , Arduino-compatible UAV ground station with LCD display (USA) HackTheBadge mega325 based board, Arduino compatible (USA) Modified Pico (USA) Oak Micros om328p - 28-pin breadboardable module smaller than the Nano (USA) Bhasha Technologies (India) POP-168 Module (Thailand) SCAXb (USA) Bare Bones Board (USA) CraftDuino (RUSSIA) Really Bare Bones Board (USA) Freeduino RS232 Serial Board (USA) Illuminato Board (USA) Boarduino (USA) The Programmable Chip EEG BCI (USA) Freeduino (Canada) Arduclema (Spain) Prototyping Board (Italy) Flexi (India) Orangutan Robot Controllers (USA) Pololu 3pi Robot (USA) LEDuino (Canada) Seeeduino (China) Miduino (Ireland) Severino (Brazil) Roboduino : For Robotics (USA) GATOR from Rugged Circuits (USA) Amanduino (Poland) Wiseduino DFRobot (China) Relayduino Arduino Compatible Relay IO Controller with USB and RS485 (Australia) iDuino - Breadboardable Arduino Clone (Canada) JeeNode (Netherlands) Nymph (USA)
http://arduino.cc/es/Tutoriales/CocheFantastico Example for Hasselhoff's fans C�digo fuente Ejemplo 1 Example for Hasselhoff's fans C�digo fuente Ejemplo 1 /* El coche fant�stico 1 * --------------------- * * Basicamente una extensi�n del LED parpadeante. * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pin2 = 2; // PIN-es de los LED int pin3 = 3; int pin4 = 4; int pin5 = 5; int pin6 = 6; int pin7 = 7; int timer = 100; // Temporizador void setup(){ // Configuraci�n de pinMode(pin2, OUTPUT); // los PIN-es como salida pinMode(pin3, OUTPUT); pinMode(pin4, OUTPUT); pinMode(pin5, OUTPUT); pinMode(pin6, OUTPUT); pinMode(pin7, OUTPUT); } void loop() { digitalWrite(pin2, HIGH); // Enciende y apaga delay(timer); // secuencialmente los LED-s digitalWrite(pin2, LOW); delay(timer); digitalWrite(pin3, HIGH); delay(timer); digitalWrite(pin3, LOW); delay(timer); digitalWrite(pin4, HIGH); delay(timer); digitalWrite(pin4, LOW); delay(timer); digitalWrite(pin5, HIGH); delay(timer); digitalWrite(pin5, LOW); delay(timer); digitalWrite(pin6, HIGH); delay(timer); digitalWrite(pin6, LOW); delay(timer); digitalWrite(pin7, HIGH); delay(timer); digitalWrite(pin7, LOW); delay(timer); digitalWrite(pin6, HIGH); delay(timer); digitalWrite(pin6, LOW); delay(timer); digitalWrite(pin5, HIGH); delay(timer); digitalWrite(pin5, LOW); delay(timer); digitalWrite(pin4, HIGH); delay(timer); digitalWrite(pin4, LOW); delay(timer); digitalWrite(pin3, HIGH); delay(timer); digitalWrite(pin3, LOW); delay(timer); } Ejemplo 2 /* El coche fant�stico 2 * --------------------- * * Reduciendo las l�neas de c�digo usando un for(;;). * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pinArray[] = {2, 3, 4, 5, 6, 7}; // Define el array de pines int count = 0; // Contador int timer = 100; // Temporizador void setup(){ for (count=0;count<6;count++) { // Configuramos todas // los PIN-es de golpe pinMode(pinArray[count], OUTPUT); } } void loop() { // Enciende y apaga // secuencialmente los LED-s for (count=0;count<6;count++) { // utilinzado la secuencia // de control for(;;) digitalWrite(pinArray[count], HIGH); // Recorrido de ida delay(timer); digitalWrite(pinArray[count], LOW); delay(timer); } for (count=5;count>=0;count--) { digitalWrite(pinArray[count], HIGH); // Recorrido de vuelta delay(timer); digitalWrite(pinArray[count], LOW); delay(timer); } } Ejemplo 3 /* El coche fant�stico 3 * --------------------- * * Este ejemplo se centra en el efecto visual. * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pinArray[] = {2, 3, 4, 5, 6, 7}; // PIN-es int count = 0; // Contador int timer = 30; // Temporizador void setup(){ for (count=0;count<6;count++) { // Configuramos todas // los PIN-es de golpe pinMode(pinArray[count], OUTPUT); } } void loop() { for (count=0;count<5;count++) { // Enciende los LED // creando una estela visual digitalWrite(pinArray[count], HIGH); delay(timer); digitalWrite(pinArray[count + 1], HIGH); delay(timer); digitalWrite(pinArray[count], LOW); delay(timer*2); } for (count=5;count>0;count--) { digitalWrite(pinArray[count], HIGH); delay(timer); digitalWrite(pinArray[count - 1], HIGH); delay(timer); digitalWrite(pinArray[count], LOW); delay(timer*2); } } /* El coche fant�stico 1 * --------------------- * * Basicamente una extensi�n del LED parpadeante. * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pin2 = 2; // PIN-es de los LED int pin3 = 3; int pin4 = 4; int pin5 = 5; int pin6 = 6; int pin7 = 7; int timer = 100; // Temporizador void setup(){ // Configuraci�n de pinMode(pin2, OUTPUT); // los PIN-es como salida pinMode(pin3, OUTPUT); pinMode(pin4, OUTPUT); pinMode(pin5, OUTPUT); pinMode(pin6, OUTPUT); pinMode(pin7, OUTPUT); } void loop() { digitalWrite(pin2, HIGH); // Enciende y apaga delay(timer); // secuencialmente los LED-s digitalWrite(pin2, LOW); delay(timer); digitalWrite(pin3, HIGH); delay(timer); digitalWrite(pin3, LOW); delay(timer); digitalWrite(pin4, HIGH); delay(timer); digitalWrite(pin4, LOW); delay(timer); digitalWrite(pin5, HIGH); delay(timer); digitalWrite(pin5, LOW); delay(timer); digitalWrite(pin6, HIGH); delay(timer); digitalWrite(pin6, LOW); delay(timer); digitalWrite(pin7, HIGH); delay(timer); digitalWrite(pin7, LOW); delay(timer); digitalWrite(pin6, HIGH); delay(timer); digitalWrite(pin6, LOW); delay(timer); digitalWrite(pin5, HIGH); delay(timer); digitalWrite(pin5, LOW); delay(timer); digitalWrite(pin4, HIGH); delay(timer); digitalWrite(pin4, LOW); delay(timer); digitalWrite(pin3, HIGH); delay(timer); digitalWrite(pin3, LOW); delay(timer); } Ejemplo 2 /* El coche fant�stico 2 * --------------------- * * Reduciendo las l�neas de c�digo usando un for(;;). * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pinArray[] = {2, 3, 4, 5, 6, 7}; // Define el array de pines int count = 0; // Contador int timer = 100; // Temporizador void setup(){ for (count=0;count<6;count++) { // Configuramos todas // los PIN-es de golpe pinMode(pinArray[count], OUTPUT); } } void loop() { // Enciende y apaga // secuencialmente los LED-s for (count=0;count<6;count++) { // utilinzado la secuencia // de control for(;;) digitalWrite(pinArray[count], HIGH); // Recorrido de ida delay(timer); digitalWrite(pinArray[count], LOW); delay(timer); } for (count=5;count>=0;count--) { digitalWrite(pinArray[count], HIGH); // Recorrido de vuelta delay(timer); digitalWrite(pinArray[count], LOW); delay(timer); } } Ejemplo 3 /* El coche fant�stico 3 * --------------------- * * Este ejemplo se centra en el efecto visual. * * * (cleft) 2005 K3, Malmo University * @author: David Cuartielles * @hardware: David Cuartielles, Aaron Hallborg */ int pinArray[] = {2, 3, 4, 5, 6, 7}; // PIN-es int count = 0; // Contador int timer = 30; // Temporizador void setup(){ for (count=0;count<6;count++) { // Configuramos todas // los PIN-es de golpe pinMode(pinArray[count], OUTPUT); } } void loop() { for (count=0;count<5;count++) { // Enciende los LED // creando una estela visual digitalWrite(pinArray[count], HIGH); delay(timer); digitalWrite(pinArray[count + 1], HIGH); delay(timer); digitalWrite(pinArray[count], LOW); delay(timer*2); } for (count=5;count>0;count--) { digitalWrite(pinArray[count], HIGH); delay(timer); digitalWrite(pinArray[count - 1], HIGH); delay(timer); digitalWrite(pinArray[count], LOW); delay(timer*2); } }
Coneixements previs: -Conceptes de corrent elèctric i components electrònics -Programació bàsica Material: Arduino Tutorial Lesson 5 (ladyada.net) Aprendre practicant. Els alumnes han d'anar descobrint el comportament dels blocs similars (constructivisme) i fer projectes més complexos: -Connexions de la placa. -Programació de la placa. -Edició de programes. A partir de cada presentació els alumnes han de fer 1 o 2 projectes ben definits que realitzen l'aplicació directa dels blocs que han vist. Quan s'ha treballat uns quants grups de blocs es planteja un parell de projectes més extensos que han de combinar-los. Si hi ha alumnes que han adquirit el nivell adequat es pot plantejar un projecte “lliure”. De tota manera s'ha de fer un seguiment proper a aquest projecte, normalment retallant possibilitats per tal que l'alumnat arribi a acabar el seu projecte i no es quedi frustrat amb un programa inacabat. El principal problema ha estat l' ANGLÈS.
Fritzing és una iniciativa de codi obert per ajudar els dissenyadors, artistes, investigadors i aficionats a fer el salt des del prototip al producte real. S'està creant aquest programari inspirant-se en Processing i Arduino, tot desenvolupant una eina que permeti als usuaris documentar els prototips electrònics i d'Arduino, compartir-los amb altres, ensenyar electrònica a les aules, i crear un disseny de circuit imprèsa per a la seva fabricació . Fritzing is essentially Electronic Design Automation software suited to the needs of designers and artists. It uses the metaphor of the breadboard, so that it is easy to transfer a hardware sketch to the software by using a drag-and-drop-based GUI to copy your sketch. From there it is possible to create PCB layouts for turning your prototype into a robust PCB, either on your own, or with the help of a manufacturer.
Why Fritzing is needed Physical prototyping tools have come a long way and already allow non-engineers to quickly turn their ideas into functional interactive prototypes. However, the prototypes in this stage are still raw and not robust. This is where Fritzing comes in: It allows the designer to move to the next stage and create a finished PCB of your individual circuit in the desired shape. This makes the circuit robust and is the basis for a permanent installation or even batch production of your project.