Proyecto inverduino

91
Inverduino INVERDUINO Malaga, 18 de Junio de 2014 Fdo:_________________________

description

 

Transcript of Proyecto inverduino

Page 1: Proyecto inverduino

Inverduino

INVERDUINO

Malaga, 18 de Junio de 2014

Fdo:_________________________

Page 2: Proyecto inverduino

Inverduino

INDICE 1 MEMORIA 1.1 Memoria Descriptiva 1.1.1 Objeto 1.1.2 Antecedentes 1.1.3 Datos de partida 1.1.4 Análisis y Descripción del circuito 2. PLANIFICACION Y PROGRAMACION (Diagramas de Gantt y Pert) 3. Anexos 3.1 Manual para el cliente 3.2 Documentación para el Servicio Técnico 3.3 Datasheets 3.4 Código Programacion 4. Planos y Esquemas 5. Pliego de condiciones 5.1 Normativa de obligado cumplimiento 5.2 Proceso de fabricación 5.3 Cláusulas sobre garantías, plazo de ejecución etc. 6. Presupuesto 6.1 Presupuestos parciales 6.1.1 Presupuesto de componentes y material vario 6.1.2 Presupuesto de Mano de obra 6.1.3 Presupuesto de Medios auxiliares e instrumentación 6.2 Presupuesto general

Page 3: Proyecto inverduino

Inverduino

1. MEMORIA

Page 4: Proyecto inverduino

Inverduino

1. Memoria descriptiva • Objeto

El objetivo de nuestro proyecto es el de construir invernadero o semillero

automatizado mediante hardware libre como lo es Arduino. En este caso he usado Arduino Mega por su mayor número de pines de entrada/salida.

• Antecedentes Existen muchos tipos de automatizaciones de invernaderos la mayoría compuestos por autómatas, mediante pic, incluso usando equipos informáticos usando sus puertos serie y paralelo. Estos sistemas mencionados suelen ser bastantes caros de implementar además de ser más complejo para un uso personal. Por lo que nuestro sistema es más favorable que los anteriores para un uso domestico.

• Datos de partida La primera idea que tengo es la de que necesito controlar y los actuadores que usare para ello. Necesitamos averiguar la temperatura/humedad del ambiente, la humedad de la tierra, la iluminación del ambiente y la capacidad del depósito que usaremos para el riego. Con estos datos activaremos una serie de relés que alimentaran a unos actuadores para cambiar esos valores a los que buscamos, esos actuadores son: ventiladores, célula Peltier, tira led, bomba de agua. Toda esta información será procesada por nuestra placa de Arduino y se verá reflejada en una pantalla Lcd de 20X4.

Page 5: Proyecto inverduino

Inverduino

• Análisis y Descripción del circuito La alimentación de todo nuestro sistema lo realizamos mediante una fuente de alimentación de pc reciclada de un equipo antiguo. Para esto debemos de puentearla, uniendo el pin de Power On (color verde) con una Masa (cable negro).

Mediante esta fuente alimentamos con 12V DC nuestro Arduino Mega mediante un conector DC macho de 2.1mm. A nuestra placa arduino ya le hemos cargado anteriormente nuestro código de programación que posteriormente veremos.

Con la fuente también alimentamos la placa de 8 relés protegida mediante optoacopladores a 5V,alimentados por Arduino.

Page 6: Proyecto inverduino

Inverduino

Los sensores usados son los siguientes:

• Sensor Humedad/temperatura DHT22:

• Sensor humedad tierra:

• Sensor fotoeléctrico o LDR:

• Sensor ultrasonidos HC-SR04

Page 7: Proyecto inverduino

Inverduino

Nuestra placa arduino recoge la información proveniente de estos sensores y la transforma en datos que nosotros entendemos y mediante el código posterior procederá a usar según necesite a los siguiente actuadores:

• Bomba de agua sumergible:

• Ventiladores:

• Tira led smd 5050 12v :

Page 8: Proyecto inverduino

Inverduino

• Célula Peltier 12v:

Toda la información de los sensores y si están en funcionamiento los actuadores podrá ser representado en la Lcd 20x4 con un adaptador con comunicación I2C que usare:

Page 9: Proyecto inverduino

Inverduino

2. PROGRAMACIÓN Y PLANIFICACIÓN

(DIAGRAMAS DE GANTT Y PERT)

Page 10: Proyecto inverduino

Inverduino

Page 11: Proyecto inverduino

Inverduino

3. ANEXO

Page 12: Proyecto inverduino

Inverduino

• Manual para el Cliente

Page 13: Proyecto inverduino

Inverduino El “Inverduino es un sistema compuesto por 3 partes: La unidad de control, el invernadero de metra quilato y el depósito de agua, como vemos en la siguiente imagen:

Page 14: Proyecto inverduino

Inverduino

Estas partes vienen separadas en el kit, para su ensamblaje en el lugar deseado. Para su ensamblaje solo necesitaremos un destornillador plano, como vemos en la imagen, para unir los cables con las clemas, estas vienen identificadas para mejorar su facilidad.

Page 15: Proyecto inverduino

Inverduino

• Arranque: Despues del correcto ensamblaje de las 3 piezas procedemos a proporcionarle electricidad para hacerlo funcionar. Esto lo conseguimos mediante un cable de corriente similar a los usados en pc, incluido en el kit. Está compuesto por un conector Sucko 250v 16A y en el otro extremo, un conector IEC 60320 C13.Posteriormente debemos de asegurarnos que el interruptor de la fuente de alimentación está en posición de encendido.

• Configuración Inicial: Lo primero que debemos de tener en cuenta es el tipo de planta que vamos a introducir en el invernadero, ya que cada tipo soportara distintas temperaturas, humedad, riego, iluminación. Esto lo podemos conseguir mediante un interruptor de 2 posiciones. Recuerde que debe de estar seleccionado el modo de funcionamiento antes del arranque del dispositivo.

Page 16: Proyecto inverduino

Inverduino

• Mensaje de bienvenida: Si todo va por buen camino en la Lcd debe de aparecer durante unos instantes un mensaje de bienvenida, como vemos en la imagen, y posteriormente proceder a la configuración manual si hemos seleccionado esto o a su funcionamiento automático.

• Configuración manual: Durante la configuración manual nos pedirá unos parámetros que debemos de tener en cuenta para la perfecta configuración del dispositivo, según la planta en cuestión. Estos parámetros son: Temperatura mínima, temperatura máxima, humedad mínima, humedad máxima, humedad tierra mínima, iluminación mínima, para posteriormente procesar esta información la unidad de control (Arduino Mega) y activar/desactivar los actuadores según condiciones ambientales. Los parámetros iremos cambiándolos mediante dos pulsadores con uno aumentaremos el valor inicial de 0 y con el otro lo reduciremos por si nos pasamos en algún valor, disponemos de otro pulsador para pasar al siguiente valor como vemos en la imagen.

Page 17: Proyecto inverduino

Inverduino

- Cosas a tener en cuenta: El depósito de agua dispone de un sensor de ultrasonidos que nos informara de su capacidad con lo que cuando se encuentre en un nivel bajo para el funcionamiento de la bomba de agua sumergible activara un buzzer con el nos avisara mediante un tono acústico, por lo que procederemos a rellenarlo. Siguiendo estas instrucciones de funcionamiento mínimas tendrás un sistema autónomo de cultivo para pequeñas plantas.

Page 18: Proyecto inverduino

Inverduino

• Documentación para el Servicio Técnico - Información técnica

A continuación se mostraran los detalles técnicos de los componentes electrónicos más relevantes empleados en la construcción de nuestro prototipo. Dicha información técnica se ha obtenido directamente de los datasheets suministrados por los fabricantes y en ellos se encontrara información acerca de parámetros eléctricos, tamaño, encapsulado, graficas de funcionamiento, etc.

- Protocolo de test Para comprobar el correcto funcionamiento de nuestro prototipo de Inverduino procederemos a comprobar tensión de alimentación de la fuente de alimentación y bomba de agua, como vemos en la imagen debemos de tener aproximadamente 230v, con ayuda de nuestro polímetro en la medida de tensión alterna. Como vemos en la imagen:

Page 19: Proyecto inverduino

Inverduino

• Posteriormente procederemos a comprobar la tensión que nos proporciona la fuente de alimentación, esta debería de ser de 12v DC (cable amarillo positivo y negro, masa) y 5v DC (entre cable rojo, positivo, y cable negro, negativo)

• Comprobar conexiones en las clemas.

Page 20: Proyecto inverduino

Inverduino

- Herramientas : Polímetro digital. Pinzas. Destornillador plano.

Page 21: Proyecto inverduino

Inverduino

DATASHEETS Hoja de datos de los principales componentes de nuestro prototipo Pickit2 clone:

• Arduino mega

Page 22: Proyecto inverduino

The Arduino Mega 2560 is a microcontroller board based on the ATmega2560 (datasheet). It has 54 digital input/output pins (of which 14 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. The Mega is compatible with most shields designed for the Arduino Duemilanove or Diecimila.

Page 23: Proyecto inverduino

EAGLE files: arduino-mega2560-reference-design.zip Schematic: arduino-mega2560-schematic.pdf

Microcontroller ATmega2560Operating Voltage 5VInput Voltage (recommended) 7-12VInput Voltage (limits) 6-20VDigital I/O Pins 54 (of which 14 provide PWM output)Analog Input Pins 16DC Current per I/O Pin 40 mADC Current for 3.3V Pin 50 mAFlash Memory 256 KB of which 8 KB used by bootloaderSRAM 8 KBEEPROM 4 KBClock Speed 16 MHz

Page 24: Proyecto inverduino

The Arduino Mega2560 can be powered via the USB connection or with an external power supply. The power source is selected automatically. External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board's power jack. Leads from a battery can be inserted in the Gnd and Vin pin headers of the POWER connector.

The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.

The Mega2560 differs from all preceding boards in that it does not use the FTDI USB-to-serial driver chip. Instead, it features the Atmega8U2 programmed as a USB-to-serial converter.

The power pins are as follows:

• VIN. The input voltage to the Arduino board when it's using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.

• 5V. The regulated power supply used to power the microcontroller and other components on the board. This can come either from VIN via an on-board regulator, or be supplied by USB or another regulated 5V supply.

• 3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA. • GND. Ground pins.

The ATmega2560 has 256 KB of flash memory for storing code (of which 8 KB is used for the bootloader), 8 KB of SRAM and 4 KB of EEPROM (which can be read and written with the EEPROM library).

Each of the 54 digital pins on the Mega can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions:

• Serial: 0 (RX) and 1 (TX); Serial 1: 19 (RX) and 18 (TX); Serial 2: 17 (RX) and 16 (TX); Serial 3: 15 (RX) and 14 (TX). Used to receive (RX) and transmit (TX) TTL serial data. Pins 0 and 1 are also connected to the corresponding pins of the ATmega8U2 USB-to-TTL Serial chip .

• External Interrupts: 2 (interrupt 0), 3 (interrupt 1), 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), and 21 (interrupt 2). These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

• PWM: 0 to 13. Provide 8-bit PWM output with the analogWrite() function. • SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). These pins support SPI communication, which, although

provided by the underlying hardware, is not currently included in the Arduino language. The SPI pins are also broken out on the ICSP header, which is physically compatible with the Duemilanove and Diecimila.

• LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.

• I2C: 20 (SDA) and 21 (SCL). Support I2C (TWI) communication using the Wire library (documentation on the Wiring website). Note that these pins are not in the same location as the I2C pins on the Duemilanove.

The Mega2560 has 16 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin and analogReference() function.

There are a couple of other pins on the board:

• AREF. Reference voltage for the analog inputs. Used with analogReference(). • Reset. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which

block the one on the board.

Page 25: Proyecto inverduino

The Arduino Mega2560 has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega2560 provides four hardware UARTs for TTL (5V) serial communication. An ATmega8U2 on the board channels one of these over USB and provides a virtual com port to software on the computer (Windows machines will need a .inf file, but OSX and Linux machines will recognize the board as a COM port automatically. The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the board. The RX and TX LEDs on the board will flash when data is being transmitted via the ATmega8U2 chip and USB connection to the computer (but not for serial communication on pins 0 and 1).

A SoftwareSerial library allows for serial communication on any of the Mega's digital pins.

The ATmega2560 also supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus; see the documentation on the Wiring website for details. To use the SPI communication, please see the ATmega2560 datasheet.

The Arduino Mega2560 can be programmed with the Arduino software (download). For details, see the reference and tutorials.

The Atmega2560 on the Arduino Mega comes preburned with a bootloader that allows you to upload new code to it without the use of an external hardware programmer. It communicates using the original STK500 protocol (reference, C header files).

You can also bypass the bootloader and program the microcontroller through the ICSP (In-Circuit Serial Programming) header; see these instructions for details.

Page 26: Proyecto inverduino

Rather then requiring a physical press of the reset button before an upload, the Arduino Mega2560 is designed in a way that allows it to be reset by software running on a connected computer. One of the hardware flow control lines (DTR) of the ATmega8U2 is connected to the reset line of the ATmega2560 via a 100 nanofarad capacitor. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of DTR can be well-coordinated with the start of the upload.

This setup has other implications. When the Mega2560 is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Mega2560. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.

The Mega contains a trace that can be cut to disable the auto-reset. The pads on either side of the trace can be soldered together to re-enable it. It's labeled "RESET-EN". You may also be able to disable the auto-reset by connecting a 110 ohm resistor from 5V to the reset line; see this forum thread for details.

The Arduino Mega has a resettable polyfuse that protects your computer's USB ports from shorts and overcurrent. Although most computers provide their own internal protection, the fuse provides an extra layer of protection. If more than 500 mA is applied to the USB port, the fuse will automatically break the connection until the short or overload is removed.

The maximum length and width of the Mega PCB are 4 and 2.1 inches respectively, with the USB connector and power jack extending beyond the former dimension. Three screw holes allow the board to be attached to a surface or case. Note that the distance between digital pins 7 and 8 is 160 mil (0.16"), not an even multiple of the 100 mil spacing of the other pins.

The Mega is designed to be compatible with most shields designed for the Diecimila or Duemilanove. Digital pins 0 to 13 (and the adjacent AREF and GND pins), analog inputs 0 to 5, the power header, and ICSP header are all in equivalent locations. Further the main UART (serial port) is located on the same pins (0 and 1), as are external interrupts 0 and 1 (pins 2 and 3 respectively). SPI is available through the ICSP header on both the Mega and Duemilanove / Diecimila. Please note that I2C is not located on the same pins on the Mega (20 and 21) as the Duemilanove / Diecimila (analog inputs 4 and 5).

Page 27: Proyecto inverduino

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

Arduino is a cross-platoform program. You’ll have to follow different instructions for your personal OS. Check on the Arduino site for the latest instructions. http://arduino.cc/en/Guide/HomePage

Once you have downloaded/unzipped the arduino IDE, you can Plug the Arduino to your PC via USB cable.

Now you’re actually ready to “burn” your first program on the arduino board. To select “blink led”, the physical translation of the well known programming “hello world”, select

File>Sketchbook>Arduino-0017>Examples>Digital>Blink

Once you have your skecth you’ll see something very close to the screenshot on the right.

In Tools>Board select MEGA

Now you have to go toTools>SerialPort and select the right serial port, the one arduino is attached to.

Page 28: Proyecto inverduino
Page 29: Proyecto inverduino

1. Warranties

1.1 The producer warrants that its products will conform to the Specifications. This warranty lasts for one (1) years from the date of the sale. The producer shall not be liable for any defects that are caused by neglect, misuse or mistreatment by the Customer, including improper installation or testing, or for any products that have been altered or modified in any way by a Customer. Moreover, The producer shall not be liable for any defects that result from Customer's design, specifications or instructions for such products. Testing and other quality control techniques are used to the extent the producer deems necessary.

1.2 If any products fail to conform to the warranty set forth above, the producer's sole liability shall be to replace such products. The producer's liability shall be limited to products that are determined by the producer not to conform to such warranty. If the producer elects to replace such products, the producer shall have a reasonable time to replacements. Replaced products shall be warranted for a new full warranty period.

1.3 EXCEPT AS SET FORTH ABOVE, PRODUCTS ARE PROVIDED "AS IS" AND "WITH ALL FAULTS." THE PRODUCER DISCLAIMS ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, REGARDING PRODUCTS, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE

1.4 Customer agrees that prior to using any systems that include the producer products, Customer will test such systems and the functionality of the products as used in such systems. The producer may provide technical, applications or design advice, quality characterization, reliability data or other services. Customer acknowledges and agrees that providing these services shall not expand or otherwise alter the producer's warranties, as set forth above, and no additional obligations or liabilities shall arise from the producer providing such services.

1.5 The Arduino products are not authorized for use in safety-critical applications where a failure of the product would reasonably be expected to cause severe personal injury or death. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear facilities and weapons systems. Arduino products are neither designed nor intended for use in military or aerospace applications or environments and for automotive applications or environment. Customer acknowledges and agrees that any such use of Arduino products which is solely at the Customer's risk, and that Customer is solely responsible for compliance with all legal and regulatory requirements in connection with such use.

1.6 Customer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements concerning its products and any use of Arduino products in Customer's applications, notwithstanding any applications-related information or support that may be provided by the producer.

2. Indemnification

The Customer acknowledges and agrees to defend, indemnify and hold harmless the producer from and against any and all third-party losses, damages, liabilities and expenses it incurs to the extent directly caused by: (i) an actual breach by a Customer of the representation and warranties made under this terms and conditions or (ii) the gross negligence or willful misconduct by the Customer.

3. Consequential Damages Waiver

In no event the producer shall be liable to the Customer or any third parties for any special, collateral, indirect, punitive, incidental, consequential or exemplary damages in connection with or arising out of the products provided hereunder, regardless of whether the producer has been advised of the possibility of such damages. This section will survive the termination of the warranty period.

4. Changes to specifications

The producer may make changes to specifications and product descriptions at any time, without notice. The Customer must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." The producer reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The product information on the Web Site or Materials is subject to change without notice. Do not finalize a design with this information.

The producer of Arduino has joined the Impatto Zero® policy of LifeGate.it. For each Arduino board produced is created / looked after half squared Km of Costa Rica’s forest’s.

Page 30: Proyecto inverduino

Inverduino

• Sensor ultrasonidos HC-SR04

Page 31: Proyecto inverduino

1

HC-SR04HC-SR04HC-SR04HC-SR04 UserUserUserUser GuideGuideGuideGuide

PartPartPartPart 1111 UUUUltrasonicltrasonicltrasonicltrasonic IntroductionIntroductionIntroductionIntroduction

1.1.1.1. 1111 UltrasonicUltrasonicUltrasonicUltrasonic DefinitionDefinitionDefinitionDefinition

The human ear can hear sound frequency around 20HZ ~ 20KHZ, and

ultrasonic is the sound wave beyond the human ability of 20KHZ .

1.21.21.21.2 UltrasonicUltrasonicUltrasonicUltrasonic distancedistancedistancedistance measurementmeasurementmeasurementmeasurement principleprincipleprincipleprinciple

Ultrasonic transmitter emitted an ultrasonic wave in one direction, and started

timing when it launched. Ultrasonic spread in the air, and would return

immediately when it encountered obstacles on the way. At last, the ultrasonic

receiver would stop timing when it received the reflected wave. As Ultrasonic

spread velocity is 340m / s in the air, based on the timer record tttt, we can

calculate the distance (s) between the obstacle and transmitter, namely: s =

340t / 2, which is so- called time difference distance measurement principle

The principle of ultrasonic distance measurement used the already-known air

spreading velocity, measuring the time from launch to reflection when it

encountered obstacle, and then calculate the distance between the transmitter

and the obstacle according to the time and the velocity. Thus, the principle of

ultrasonic distance measurement is the same with radar.

Distance Measurement formula is expressed as: L = C X T

In the formula, L is the measured distance, and C is the ultrasonic spreading

velocity in air, also, T represents time (T is half the time value from transmitting

to receiving ).

Page 32: Proyecto inverduino

2

1.31.31.31.3 UltrasonicUltrasonicUltrasonicUltrasonic ApplicationApplicationApplicationApplication

Ultrasonic Application Technology is the thing which developed in recent

decades. With the ultrasonic advance, and the electronic technology

development, especially as high-power semiconductor device technology

matures, the application of ultrasonic has become increasingly widespread:

� Ultrasonic measurement of distance, depth and thickness;

� Ultrasonic testing;

� Ultrasound imaging;

� Ultrasonic machining, such as polishing, drilling;

� Ultrasonic cleaning;

� Ultrasonic welding;

PartPartPartPart 2222 HC-SR04HC-SR04HC-SR04HC-SR04 UltrasonicUltrasonicUltrasonicUltrasonic ModuleModuleModuleModule IntroductioIntroductioIntroductioIntroductionnnn

2.12.12.12.1 ProductProductProductProduct FeaturesFeaturesFeaturesFeatures

� Stable performance� Accurate distance measurement� High-density� Small blindAAAApplicationpplicationpplicationpplication AAAAreas:reas:reas:reas:� Robotics barrier� Object distance measurement� Level detection� Public security� Parking detection

Page 33: Proyecto inverduino

3

2.22.22.22.2 ProductProductProductProduct ImageImageImageImage

2.32.32.32.3、、、、ModuleModuleModuleModule pinpinpinpin definitionsdefinitionsdefinitionsdefinitions

Types Pin Symbol Pin Function Description

HC-SR04

VCC 5V power supplyTrig Trigger pinEcho Receive pinGND Power ground

2.42.42.42.4、、、、ElectricalElectricalElectricalElectrical parametersparametersparametersparameters

Electrical Parameters HC-SR04 Ultrasonic ModuleOperating Voltage DC-5VOperating Current 15mA

Operating Frequency 40KHZFarthest Range 4mNearest Range 2cm

Measuring Angle 15 DegreeInput Trigger Signal 10us TTL pulse

Output Echo Signal Output TTL level signal, proportionalwith range

Dimensions 45*20*15mm

Page 34: Proyecto inverduino

4

2.52.52.52.5 ModuleModuleModuleModule operatingoperatingoperatingoperating PrinciplePrinciplePrinciplePrinciple

Set low the Trig and Echo port when the module initializes , firstly, transmit

at least 10us high level pulse to the Trig pin (module automatically sends eight

40K square wave), and then wait to capture the rising edge output by echo port,

at the same time, open the timer to start timing. Next, once again capture the

falling edge output by echo port, at the same time, read the time of the counter,

which is the ultrasonic running time in the air. According to the formular: test

distance = (high level time * ultrasonic spreading velocity in air) / 2, you can

calculate the distance to the obstacle.

Part3Part3Part3Part3 UseUseUseUse FreaduinoFreaduinoFreaduinoFreaduino UNOUNOUNOUNO totototo testtesttesttest HC-SR04HC-SR04HC-SR04HC-SR04

3.13.13.13.1 FreaduinoFreaduinoFreaduinoFreaduino unounounouno andandandand HC-SR04HC-SR04HC-SR04HC-SR04 ConnectionConnectionConnectionConnection

Connection Description:D2<------>Trig D3<------>Echo (The userscan define the connection pin by themselves)

Note:You need to set the Freaduino UNO switch in 5V Side when usetogether with HC-SR04 Module.

Page 35: Proyecto inverduino

5

3.23.23.23.2 HCSR04HCSR04HCSR04HCSR04 librarylibrarylibrarylibrary functionfunctionfunctionfunction descriptiondescriptiondescriptiondescription

LongLongLongLong timing()timing()timing()timing()

Function name: timingParameters: NoneReturn Value: the time of ultrasonic from the transmitter to the receiver

floatfloatfloatfloat CalcDistance(longCalcDistance(longCalcDistance(longCalcDistance(long microsec,intmicrosec,intmicrosec,intmicrosec,int metric)metric)metric)metric)

Function name:CalcDistance� microsec: the time of ultrasonic from the transmitter to the receiver� metric: Set the unit of the return value ( the value of 1 for cm, and the value

of 0 for in )Return Value: the measured distance

3.33.33.33.3 AddAddAddAdd thethethethe HC-SR04HC-SR04HC-SR04HC-SR04 LibraryLibraryLibraryLibrary

Step1:Download the Demo Code of HCSR04 Ultrasonic from address

http://www.elecfreaks.com/store/download/product/Sensor/HC-SR04/HCSR04Ultrasonic_demo.zip and

then unpack it to get the file of HCSR04 Ultrasonic.

Step2: Add the file of HCSR04 Ultrasonic in the file of Arduino-1.0.X / libraries.

Step3:If you can see the Example of HCSR04 Ultrasonic in Arduino IDE, the

adding of HC-SR04 library has been successful.

3.43.43.43.4 TestTestTestTest thethethethe ModuleModuleModuleModule withwithwithwith thethethethe ExamplesExamplesExamplesExamples ofofofof LibraryLibraryLibraryLibrary FileFileFileFile

1. Open Arduino IDE 1.0.X, and choose the corresponding board and

serial port.

2. Click file/ examples/ HCSR04Ultrasonic until the code pop up.

3. Compiling sketch until Done uploading appears, which represents the

uploading has been successful.

4. Open serial monitor and set the corresponding BaudRate.

5. If you see similar information in serial monitor as below, you succeeded.

Page 36: Proyecto inverduino

6

Chart 3、HC-SR04 testing results

Page 37: Proyecto inverduino

Inverduino

• Sensor temperatura/humedad DHT-22

Page 38: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

Digital-output relative humidity & temperature sensor/module

DHT22 (DHT22 also named as AM2302)

Capacitive-type humidity and temperature module/sensor

Thomas Liu (Business Manager)

Email: [email protected]

1

Page 39: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors1. Feature & Application: * Full range temperature compensated * Relative humidity and temperature measurement* Calibrated digital signal *Outstanding long-term stability *Extra components not needed* Long transmission distance * Low power consumption *4 pins packaged and fully interchangeable

2. Description:DHT22 output calibrated digital signal. It utilizes exclusive digital-signal-collecting-technique and humidity sensing technology, assuring its reliability and stability.Its sensing elements is connected with 8-bit single-chip computer.

Every sensor of this model is temperature compensated and calibrated in accurate calibration chamber and the calibration-coefficient is saved in type of programme in OTP memory, when the sensor is detecting, it will cite coefficient from memory.

Small size & low consumption & long transmission distance(20m) enable DHT22 to be suited in all kinds of harsh application occasions.

Single-row packaged with four pins, making the connection very convenient.

3. Technical Specification: Model DHT22Power supply 3.3-6V DCOutput signal digital signal via single-busSensing element Polymer capacitorOperating range humidity 0-100%RH; temperature -40~80CelsiusAccuracy humidity +-2%RH(Max +-5%RH); temperature <+-0.5CelsiusResolution or sensitivity humidity 0.1%RH; temperature 0.1CelsiusRepeatability humidity +-1%RH; temperature +-0.2CelsiusHumidity hysteresis +-0.3%RHLong-term Stability +-0.5%RH/yearSensing period Average: 2sInterchangeability fully interchangeableDimensions small size 14*18*5.5mm; big size 22*28*5mm

4. Dimensions: (unit----mm)

1) Small size dimensions: (unit----mm)

Thomas Liu (Business Manager)

Email: [email protected]

2

Page 40: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

Thomas Liu (Business Manager)

Email: [email protected]

3

Page 41: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

Pin sequence number: 1 2 3 4 (from left to right direction).

Pin Function 1 VDD----power supply 2 DATA--signal 3 NULL 4 GND

Thomas Liu (Business Manager)

Email: [email protected]

4

Page 42: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

5. Electrical connection diagram:

3Pin---NC, AM2302 is another name for DHT22

6. Operating specifications:(1) Power and PinsPower's voltage should be 3.3-6V DC. When power is supplied to sensor, don't send any instruction to the sensor within one second to pass unstable status. One capacitor valued 100nF can be added between VDD and GND for wave filtering. (2) Communication and signalSingle-bus data is used for communication between MCU and DHT22, it costs 5mS for single time communication.

Data is comprised of integral and decimal part, the following is the formula for data.

DHT22 send out higher data bit firstly! DATA=8 bit integral RH data+8 bit decimal RH data+8 bit integral T data+8 bit decimal T data+8 bit check-sum If the data transmission is right, check-sum should be the last 8 bit of "8 bit integral RH data+8 bit decimal RH data+8 bit integral T data+8 bit decimal T data".

When MCU send start signal, DHT22 change from low-power-consumption-mode to running-mode. When MCU finishs sending the start signal, DHT22 will send response signal of 40-bit data that reflect the relative humidity

Thomas Liu (Business Manager)

Email: [email protected]

5

Page 43: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensorsand temperature information to MCU. Without start signal from MCU, DHT22 will not give response signal to MCU. One start signal for one time's response data that reflect the relative humidity and temperature information from DHT22. DHT22 will change to low-power-consumption-mode when data collecting finish if it don't receive start signal from MCU again.1) Check bellow picture for overall communication process:

------------------------------------------------------------------------------------------------------------------------------------ Host computer send out start signal. Data transmission finished, Sensor send out and RL pull up bus's voltage response signal. Output data: 1bit"0" for next transmission

Pull up and wait Host's signal Sensor's signal Output data: 1bit "1" response from sensor Sensor pull down Pull up voltage and get bus's voltage ready for sensor's output. Single-bus output------------------------------------------------------------------------------------------------------------------------------------

2) Step 1: MCU send out start signal to DHT22

Data-bus's free status is high voltage level. When communication between MCU and DHT22 begin, program of MCU will transform data-bus's voltage level from high to low level and this process must beyond at least 1ms to ensure DHT22 could detect MCU's signal, then MCU will wait 20-40us for DHT22's response.

Check bellow picture for step 1:

Thomas Liu (Business Manager)

Email: [email protected]

6

Page 44: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors----------------------------------------------------------------------------------------------------------------------------------- Host computer send start signal Sensor send out response signal and keep this signal at least 1ms and keep this signal 80us

Host pull up voltage -and wait sensor's response Sensor pull up bus's voltage

Signal from host Start data transmission

Signal from sensor

Single-bus signal

------------------------------------------------------------------------------------------------------------------------------------ Step 2: DHT22 send response signal to MCU

When DHT22 detect the start signal, DHT22 will send out low-voltage-level signal and this signal last 80us as response signal, then program of DHT22 transform data-bus's voltage level from low to high level and last 80us for DHT22's preparation to send data.

Check bellow picture for step 2:

Thomas Liu (Business Manager)

Email: [email protected]

7

Page 45: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

------------------------------------------------------------------------------------------------------------------------------------

Start transmit 1bit data Start transmit next bit data

26-28us voltage-length means data "0"

Host signal Sesnor's signal

Single-bus signal

------------------------------------------------------------------------------------------------------------------------------------ Step 3: DHT22 send data to MCU

When DHT22 is sending data to MCU, every bit's transmission begin with low-voltage-level that last 50us, the following high-voltage-level signal's length decide the bit is "1" or "0".

Check bellow picture for step 3:

Thomas Liu (Business Manager)

Email: [email protected]

8

Page 46: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors------------------------------------------------------------------------------------------------------------------------------------

70us voltage-length means 1bit data "1"

Start transmit 1bit data Start transmit next bit data

Host signal Sesnor's signal

Single-bus signal---------------------------------------------------------------------------------------------------------- If signal from DHT22 is always high-voltage-level, it means DHT22 is not working properly, please check the electrical connection status.

7. Electrical Characteristics:Item Condition Min Typical Max UnitPower supply DC 3.3 5 6 VCurrent supply Measuring 1 1.5 mA

Stand-by 40 Null 50 uACollecting period

Second 2 Second

*Collecting period should be : >2 second.

Thomas Liu (Business Manager)

Email: [email protected]

9

Page 47: Proyecto inverduino

Aosong Electronics Co.,Ltd--------------------------------------------------------------------------------------------------------------------- Your specialist in innovating humidity & temperature sensors

8. Attentions of application:(1) Operating and storage conditions We don't recommend the applying RH-range beyond the range stated in this specification. The DHT22 sensor can recover after working in non-normal operating condition to calibrated status, but will accelerate sensors' aging.(2) Attentions to chemical materials Vapor from chemical materials may interfere DHT22's sensitive-elements and debase DHT22's sensitivity.(3) Disposal when (1) & (2) happens Step one: Keep the DHT22 sensor at condition of Temperature 50~60Celsius, humidity <10%RH for 2 hours; Step two: After step one, keep the DHT22 sensor at condition of Temperature 20~30Celsius, humidity >70%RH for 5 hours.(4) Attention to temperature's affection Relative humidity strongly depend on temperature, that is why we use temperature compensation technology to ensure accurate measurement of RH. But it's still be much better to keep the sensor at same temperature when sensing. DHT22 should be mounted at the place as far as possible from parts that may cause change to temperature.(5) Attentions to light Long time exposure to strong light and ultraviolet may debase DHT22's performance.(6) Attentions to connection wires The connection wires' quality will effect communication's quality and distance, high quality shielding-wire is recommended.(7) Other attentions * Welding temperature should be bellow 260Celsius. * Avoid using the sensor under dew condition. * Don't use this product in safety or emergency stop devices or any other occasion that failure of DHT22 may cause personal injury.

Thomas Liu (Business Manager)

Email: [email protected]

10

Page 48: Proyecto inverduino

Inverduino

• Sensor Humedad Tierra

Page 49: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

1

Tech Support: [email protected]

Soil Moisture Sensor

Overview

What is an electronic brick? An electronic brick is an electronic module which can be assembled like Lego bricks simply by

plugging in and pulling out. Compared to traditional universal boards and circuit modules assembled with various

electronic components, electronic brick has standardized interfaces, plug and play, simplifying construction of prototype

circuit on one’s own. There are many types of electronic bricks, and we provide more than twenty types with different

functions including buttons, sensors, Bluetooth modules, etc, whose functions cover from sensor to motor drive, from

Ethernet to wireless communication via Bluetooth, and so on. We will continue to add more types to meet the various

needs of different projects.

Electronic brick of soil moisture sensor is mainly used to detect the moisture content in the soil. The control board can get

the moisture value or threshold in the soil via analog or digital pins.

Features

1. Plug and play, easy to use. Compatible with the mainstream 2.54 interfaces and 4-Pin Grove interfaces in the market.

Page 50: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

2

Tech Support: [email protected]

2. With use of M4 standard fixed holes, compatible with M4-standard kits such as Lego and Makeblock.

3. With switch to shift between analog and digital output. Able to read the specific soil moisture information (analog) or

the over-wet or over-dry soil information according to the threshold (digital). The adjustable potentiometer is used to

set the moisture threshold.

Page 51: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

3

Tech Support: [email protected]

4. With hysteresis comparator circuit for more stable digital output voltage.

Specifications

PCB size 71.65mm X 24.00mm X 1.6mm

Working voltage 3.3or 5V DC

Operating voltage 3.3 or 5V DC

Compatible interfaces 2.54 3-pin interface and 4-pin Grove interface(1)(2)

Note 1: D for digital output port, A for analog output port, S for analog/digital output port ( defined according to the

switch), V and G for voltage at the common collector and ground respectively

Note 2: When setting as analog output, output range is 0-3.3V or 0-5V according to the working voltage; when setting as

digital output, output is 0/3.3V or 0/5V according to the working voltage.

Electrical characteristics

Parameter Min. Typical Max. Unit

Working voltage 2.1 5 5.5 VDC

Analog output voltage(VCC=5V) 0 Vout 5 V

Digital output voltage(VCC=5V) 0 - 5 V

Working current(VCC=5V) - 5 - mA

Threshold hysteresis ΔUth - VCC*0.09 - V

Page 52: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

4

Tech Support: [email protected]

Hardware

Top view

Switch and indicator

1. Regulating of threshold voltage:

The threshold voltage is a voltage for comparison. When the soil moisture value read by the sensor is above the threshold

value, a low level (0V) will be digitally output; when the soil moisture value read by the sensor is below the threshold value,

a high level (3.3V or 5V) will be digitally output. In this way, the digital pin can be used directly to read the current soil

moisture value to see if it is above the threshold or not. The threshold voltage can be regulated by simply twisting the

potentiometer which is shown in Figure 1., and it increases by rotating to left side and decreases by rotating to right side.

Page 53: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

5

Tech Support: [email protected]

2. Switch to shift between analog and digital output

For 4-pin Grove interface, this switch makes no sense.

For S pin in 2.54mm 3-pin interface, it outputs analog signals when switch is pushed to A terminal and digital signals

when pushed to D terminal. When there is analog signal output, it can read the specific soil moisture value; when

there is digital signal output, it can only indicate whether the soil moisture value is above threshold value or not.

DEMO

1. Push the snap switch of sensor to analog output, connect S port to A0 port of Arduino board, and we will use the

following program to read the analog value of soil and send it to computer for display via the serial port.

int ASignal = A0;

void setup() {

Serial.begin(9600);

}

void loop() {

int sensorValue = analogRead(ASignal);

Serial.println(sensorValue);

}

2. Push the snap switch of sensor to digital output, connect S port to D2 port of Arduino board, and we will use the

following program to read the digital value of soil and send the threshold to computer for display .

int DSIGNAL = 2;

void setup()

{

Serial.begin(9600);

Page 54: Proyecto inverduino

Soil moisture sensor iteadstudio.com 12th

, April, 2013

6

Tech Support: [email protected]

pinMode(DSIGNAL, INPUT);

}

void loop()

{

int DsignalState = digitalRead(DSIGNAL);

Serial.println(DsignalState);

delay(100);

}

Revision history

Version Description Date Written by Audited by

v1.0 Initial edition 12th, April, 2013 Stan Lee Tse Zhe

Page 55: Proyecto inverduino

Inverduino

• Lcd 20x4

Page 56: Proyecto inverduino

Systronix 20x4 LCDBrief Technical Data

July 31, 2000

Here is brief data for the Systronix 20x4 character LCD. It is a DataVision part and uses theSamsung KS0066 LCD controller. It's a clone of the Hitachi HD44780. We're not aware of anyincompatabilities between the two - at least we have never seen any in all the code and customapplications we have done.

This 20x4 LCD is electrically and mechanically interchangeable with 20x4 LCDs from severalother vendors. The only differences we've seen among different 20x4 LCDs are:

1) LED backlight brightness, voltage and current vary widely, as does the quality of the display

2) There is a resistor “Rf” which sets the speed of the LCD interface by controlling the internaloscillator frequency. Several displays we have evaluated have a low resistor value. This makesthe display too slow. Looking at the Hitachi data sheet page 56, it appears that perhaps the“incorrect” resistor is really intended for 3V use of the displays.

At 5V the resistor Rf should be 91 Kohms. At 3V it should be 75 Kohms. Using a 3V display at5V is acceptable from a voltage standpoint (the display can operate on 3-5V) but the oscillatorwill then be running too slowly. One fix is to always check the busy flag and not use a fixed timedelay in your code, then it will work regardless of the LCD speed. The other option is to alwaysallow enough delay for the slower display.

All Systronix 20x4 LCDs have the 91 Kohm resistor and are intended for 5V operation.

Thank you for purchasing Systronix embedded control products and accessories. If you have anyother questions please email to [email protected] or phone +1-801-534-1017, fax +1-801-534-1019.

Bruce Boyes
Page 57: Proyecto inverduino

i ABSOLUTE MAXIMUM RATINGS i ELECTRICAL CHARACTERISTICS (REFLECTIVE TYPE)

Item Symbol Unit Item Symbol Condition UnitStandard Value Standard Value

Min. Typ. Max. Min. Typ. Max.

Supply Voltage for Logic Input “High” VoltageV 0 7.0 V V 2.2 VDD- Y Y Y

Supply Voltage for LCD Driver Input “Low” VoltageV -V 13.5 V V 0.6 VDD EE Y Y Y Y Y

Input Voltage Output “High” VoltageV V V V V 2.2 VI SS Y Y YDD

Operature Temp. Output “Low” VoltageTopr 0 50 °C V 0.4 VY Y Y

Storage Temp. Supply CurrentTstg -20 70 °C I V =5.0A 2.5 4.0 mAY Y

Test

IH VEE

IL

OH I =0.2mAOH

OL I =1.2mAOL

DD DD

i PIN FUNCTIONS i BLOCK DIAGRAMNo Symbol Function No Symbol Function1 V GND, 0V 10 DB3 Data BusSS

2 V +5V 11 DB4DD Y

3 V for LCD Drive 12 DB5EE Y

4 RS Function Select 13 DB6 Y

5 R/W Read/Write 14 DB7 Y

6 E Enable Signal 15 LEDALED Power Supply

7-9 DB0-DB2 Data Bus Line 16 LEDA

Page 58: Proyecto inverduino

HD44780U

184

Table 4 Correspondence between Character Codes and Character Patterns (ROM Code: A00)

xxxx0000

xxxx0001

xxxx0010

xxxx0011

xxxx0100

xxxx0101

xxxx0110

xxxx0111

xxxx1000

xxxx1001

xxxx1010

xxxx1011

xxxx1100

xxxx1101

xxxx1110

xxxx1111

0000 0010 0011 0100 0101 0110 0111 1010 1011 1100 1101 1110 1111Upper 4

BitsLower 4 Bits

CG RAM (1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

0001 1000 1001

Note: The user can specify any pattern for character-generator RAM.

Page 59: Proyecto inverduino

HD44780U

212

Initializing by Instruction

If the power supply conditions for correctly operating the internal reset circuit are not met, initializationby instructions becomes necessary.

Refer to Figures 25 and 26 for the procedures on 8-bit and 4-bit initializations, respectively.

Power on

Wait for more than 15 ms after VCC rises to 4.5 V

Wait for more than 4.1 ms

Wait for more than 100 µs

RS 0

R/W 0

DB7 0

DB6 0

DB5 1

DB4 1

DB3DB2 DB1 DB0 * * * *

RS 0

R/W 0

DB7 0

DB6 0

DB5� 1

DB4 1

DB3DB2DB1DB0* * * *

RS 0

R/W 0

DB7 0

DB6 0

DB5 1

DB4 1

DB3DB2DB1* * *

DB0*

RS 0

R/W 0

DB7 0

DB6 0

DB5 1

DB4 1

DB3 N

DB2 F

DB1DB0* *

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

1

0

0

I/D

0

1

S

Initialization ends

BF cannot be checked before this instruction.

Function set (Interface is 8 bits long.)

BF cannot be checked before this instruction.

Function set (Interface is 8 bits long.)

BF cannot be checked before this instruction.

Function set (Interface is 8 bits long.)

BF can be checked after the following instructions. When BF is not checked, the waiting time between instructions is longer than the execution instuction time. (See Table 6.)

Function set (Interface is 8 bits long. Specify the number of display lines and character font.) The number of display lines and character font cannot be changed after this point.

Display off

Display clear

Entry mode set

Wait for more than 40 ms after VCC rises to 2.7 V

Figure 25 8-Bit Interface

Page 60: Proyecto inverduino

HD44780U

190

Reset Function

Initializing by Internal Reset Circuit

An internal reset circuit automatically initializes the HD44780U when the power is turned on. Thefollowing instructions are executed during the initialization. The busy flag (BF) is kept in the busy stateuntil the initialization ends (BF = 1). The busy state lasts for 10 ms after VCC rises to 4.5 V.

1. Display clear

2. Function set:

DL = 1; 8-bit interface data

N = 0; 1-line display

F = 0; 5 × 8 dot character font

3. Display on/off control:

D = 0; Display off

C = 0; Cursor off

B = 0; Blinking off

4. Entry mode set:

I/D = 1; Increment by 1

S = 0; No shift

Note: If the electrical characteristics conditions listed under the table Power Supply Conditions UsingInternal Reset Circuit are not met, the internal reset circuit will not operate normally and will failto initialize the HD44780U. For such a case, initial-ization must be performed by the MPU asexplained in the section, Initializing by Instruction.

Instructions

Outline

Only the instruction register (IR) and the data register (DR) of the HD44780U can be controlled by theMPU. Before starting the internal operation of the HD44780U, control information is temporarily storedinto these registers to allow interfacing with various MPUs, which operate at different speeds, or variousperipheral control devices. The internal operation of the HD44780U is determined by signals sent fromthe MPU. These signals, which include register selection signal (RS), read/

write signal (R/:), and the data bus (DB0 to DB7), make up the HD44780U instructions (Table 6). Thereare four categories of instructions that:

• Designate HD44780U functions, such as display format, data length, etc.

• Set internal RAM addresses

• Perform data transfer with internal RAM

• Perform miscellaneous functions

Page 61: Proyecto inverduino

HD44780U

191

Normally, instructions that perform data transfer with internal RAM are used the most. However, auto-incrementation by 1 (or auto-decrementation by 1) of internal HD44780U RAM addresses after each datawrite can lighten the program load of the MPU. Since the display shift instruction (Table 11) can performconcurrently with display data write, the user can minimize system development time with maximumprogramming efficiency.

When an instruction is being executed for internal operation, no instruction other than the busyflag/address read instruction can be executed.

Because the busy flag is set to 1 while an instruction is being executed, check it to make sure it is 0before sending another instruction from the MPU.

Note: Be sure the HD44780U is not in the busy state (BF = 0) before sending an instruction from theMPU to the HD44780U. If an instruction is sent without checking the busy flag, the time betweenthe first instruction and next instruction will take much longer than the instruction time itself.Refer to Table 6 for the list of each instruc-tion execution time.

Table 6 Instructions

CodeExecution Time(max) (when f cp or

Instruction RS R/ :: DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 Description f OSC is 270 kHz)

Cleardisplay

0 0 0 0 0 0 0 0 0 1 Clears entire display and setsDDRAM address 0 in addresscounter.

Returnhome

0 0 0 0 0 0 0 0 1 — Sets DDRAM address 0 inaddress counter. Also returnsdisplay from being shifted tooriginal position. DDRAMcontents remain unchanged.

1.52 ms

Entrymode set

0 0 0 0 0 0 0 1 I/D S Sets cursor move directionand specifies display shift.These operations areperformed during data writeand read.

37 µs

Displayon/offcontrol

0 0 0 0 0 0 1 D C B Sets entire display (D) on/off,cursor on/off (C), and blinkingof cursor position character(B).

37 µs

Cursor ordisplayshift

0 0 0 0 0 1 S/C R/L — — Moves cursor and shiftsdisplay without changingDDRAM contents.

37 µs

Functionset

0 0 0 0 1 DL N F — — Sets interface data length(DL), number of display lines(N), and character font (F).

37 µs

SetCGRAMaddress

0 0 0 1 ACG ACG ACG ACG ACG ACG Sets CGRAM address.CGRAM data is sent andreceived after this setting.

37 µs

SetDDRAMaddress

0 0 1 ADD ADD ADD ADD ADD ADD ADD Sets DDRAM address.DDRAM data is sent andreceived after this setting.

37 µs

Read busyflag &address

0 1 BF AC AC AC AC AC AC AC Reads busy flag (BF)indicating internal operation isbeing performed and readsaddress counter contents.

0 µs

Page 62: Proyecto inverduino

HD44780U

192

Table 6 Instructions (cont)

CodeExecution Time(max) (when f cp or

Instruction RS R/ :: DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 Description f OSC is 270 kHz)

Write datato CG orDDRAM

1 0 Write data Writes data into DDRAM orCGRAM.

37 µstADD = 4 µs*

Read datafrom CG orDDRAM

1 1 Read data Reads data from DDRAM orCGRAM.

37 µstADD = 4 µs*

I/D = 1: IncrementI/D = 0: DecrementS = 1: Accompanies display shiftS/C = 1: Display shiftS/C = 0: Cursor moveR/L = 1: Shift to the rightR/L = 0: Shift to the leftDL = 1: 8 bits, DL = 0: 4 bitsN = 1: 2 lines, N = 0: 1 lineF = 1: 5 × 10 dots, F = 0: 5 × 8 dotsBF = 1: Internally operatingBF = 0: Instructions acceptable

DDRAM: Display data RAMCGRAM: Character generator

RAMACG: CGRAM addressADD: DDRAM address

(corresponds to cursoraddress)

AC: Address counter used forboth DD and CGRAMaddresses

Execution timechanges whenfrequency changesExample:When fcp or fOSC is250 kHz,37 µs × = 40 µs270

250

Note: — indicates no effect.* After execution of the CGRAM/DDRAM data write or read instruction, the RAM address counter

is incremented or decremented by 1. The RAM address counter is updated after the busy flagturns off. In Figure 10, tADD is the time elapsed after the busy flag turns off until the addresscounter is updated.

Busy stateBusy signal (DB7 pin)

Address counter (DB0 to DB6 pins)

t ADD

A A + 1

Note: t depends on the operation frequency t = 1.5/(f or f ) seconds

ADD

ADD cp OSC

Figure 10 Address Counter Update

Page 63: Proyecto inverduino

Inverduino

• Célula Peltier

Page 64: Proyecto inverduino

Performance Specifications

Hot Side Temperature (ºC) 25ºC 50ºC

Qmax (Watts) 50 57

Delta Tmax (ºC) 66 75

Imax (Amps) 6.4 6.4

Vmax (Volts) 14.4 16.4

Module Resistance (Ohms) 1.98 2.30

Thermoelectric Cooler

TEC1-12706

Hebei I.T. (Shanghai) Co., Ltd.

Rev 2.03

www.hebeiltd.com.cn Page 1 of 3

Page 65: Proyecto inverduino

Rev 2.03 www.hebeiltd.com.cn Page 2 of 3

Thermoelectric Cooler

TEC1-12706

Hebei I.T. (Shanghai) Co., Ltd.

Performance curves:

Page 66: Proyecto inverduino

Ceramic Material: Alumina (Al2O3) Solder Construction: 138ºC, Bismuth Tin (BiSn)

Size table:

A B C

Lead Length

40 40 3.9

Operating Tips

• Max. Operating Temperature: 138oC • Do not exceed Imax or Vmax when

operating module.

• Please consult HB for moisture protection options (seeling).

• Life expectancy: 200,000 hours • Failure rate based on long time testings: 0.2%.

Thermoelectric Cooler

TEC1-12706

Hebei I.T. (Shanghai) Co., Ltd.

Rev 2.03 www.hebeiltd.com.cn Page 3 of 3

Page 67: Proyecto inverduino

Inverduino

• LDR

Page 68: Proyecto inverduino

FOTORRESISTENCIA LDR 4,3mm x Ø 5,1mmC O M P O N E N T E S Y A C C E S O R I O S .

1Rev. Full0041

DESCRIPCION GENERAL.

CARACTERÍSTICAS TÉCNICAS.

Fotorresistencia o resistencia dependiente de la luz, consistente en una célula de Sulfuro de Cadmio, altamente estable, encapsulada con una resina epoxi transparente, resitente a lahumedad. La respuesta espectral es similar a la del ojo humano. Su nivel de resistencia aumenta cuando el nivel de luz disminuye.

Aplicaciones: Control de contraste en televisores y monitores, control automático de la iluminación en habitaciones, juguetes y juegos electrónicos, controles industriales, interruptorescrepusculares, boyas y balizas de encendido automático, auto-flash, etc...

Notas: ) Medido con una fuente luminosa formada por una lámpara detungsteno, trabajando a una temperatura de color de 2856K.

)Medición efectuada 10 segundos después de retirar una iluminaciónincidente de 10 lux.

) Sensibilidad entre 10 y 100 lux, dada por:

donde R100, R10 son las resistencias a 100 y 10 lux respectivamente, y E100,E10 las iluminancias de 100 y 10 lx respectivamente.

) Tiempo de subida es el tiempo necesario para alcanzar el 63% del nivel desaturación. Tiempo de bajada es el necesario para que la célula alcance el37% desde el nivel saturación.

) Todas las características están medidas con la célula LDR expuesta a la luz(100-500 lux) durante 1 o 2 horas.

A

B

C

D

E

?

Modelo Valores máximos Características a 25ºC (nota E)Tensión a 25ºC Potencia disipable Temperatura ambiente Resistencia (notaA) (notaC) Tiempos de respuesta a 10 lx (notaD) Respuesta espectral

10 lux (2856K) 0 lux (notaB) 100-10 lx t. subida t. bajada (pico)?

(Vdc) (mW) (ºC) Min.(k ) Max.(k ) Min.(M ) (M ) (ms) (ms) (nm) .? ? ? ?

C-2795 150 90 -25 a 75 50 140 20 0.9 60 25 570

? ? Los nombres registrados y marcas que se citan son propiedad de sus respectivos titulares.

CONSIDERACIONES.

=log(E100)-log(E10)log(R100)-log(R10)

Epoxi en los terminalesmáximo 3mm

Ø 5,1

Ø 0,526 min.

3,4Cotas en milímetros

4,3

2,0

1000

100

10

11 10 100 lux

K-ohms

Resistencia de la célula en función de la iluminancia

-20 0 20 40 60 80 (ºC)

1501251007560

Variación de la resistencia dela célula iluminada

en función de la temperatura

(%)

Este componente está destinado para su uso por parte de profesionales, o usuarios con un nivel técnico o conocimientos suficientes, que les permita desarrollar por sí mismos los proyectos oaplicaciones deseados. Por este motivo no se facilitará asistencia técnica sobre problemas de implementación del citado componente en las aplicaciones en las que sea empleado.Para cualquier problema relativo al funcionamiento del producto (excluidos los problemas de aplicación), póngase en contacto con nuestro

Los productos de la família "Componentes" de Cebek disponen de a partir de la fecha de compra. Quedan excluidos el trato o manipulación incorrectos.Disponemos de más productos que pueden interesarle, visítenos en:

departamento técnico Fax 93 432 29 95.Correo electrónico: [email protected]. La documentación técnica de este producto responde a una transcripción de la proporcionada por el fabricante.

1 año de garantíawww.fadisel.com SOLICITE GRATUITAMENTE nuestro catálogo.

.

ó

Page 69: Proyecto inverduino

Inverduino

3.4 Código Programación /* Inverduino * * AUTOMATIZACION DE UN INVERNADERO. * * By:Linero * */ //Ldr int ldr = 1; // Pin para la ldr //Ultrasonidos #include <Ultrasonic.h> Ultrasonic ultrasonic(9,8); // (Trig PIN,Echo PIN) int D; //Humedad tierra int soil=0; //DHT22 #include "DHT.h"//librerias sensor humedad/temperatura DHT22 #define DHTPIN 2 //pin 2 digital #define DHTTYPE DHT22 DHT dht(DHTPIN, DHTTYPE); float t; float h; #include <Wire.h>//libreria lcd I2C #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,20,4); //Pin 20 SDA ,,,,,,Pin 21 SCL Para I2C Lcd Arduino Mega int conf=0;//solo una vez int automatico=0; int interruptor=28; //pin interruptor auto/manual int inPin1 = 22; // pin del pulsador 1 int inPin2 = 24;// pin del pulsador 2 int inPin3 = 26;// pin del start int value = 0; // valor que tomara el pulsador int tempM=0;//variable temperatura maxima int tempm=0;//variable temperatura minima int inicio=0;//para que solo entre una vez en la configuracion de temperatura maxima int iniciop=HIGH;//para que se salga del while de la temperatura maxima int iniciop1=HIGH;//paar que se salga del while ed la temperatura minima int inicio1=0;////para que solo entre una vez en la configuracion de temperatura minima int humm=0;//variable para humedad minima int inicio2=0;////para que solo entre una vez en la configuracion de humedad minima int iniciop2=HIGH;//para que se salga del while de la humedad minima int humM=0;//variable para humedad maxima

Page 70: Proyecto inverduino

Inverduino

int inicio3=0;////para que solo entre una vez en la configuracion de humedad maxima int iniciop3=HIGH;//para que se salga del while de la humedad maxima int humTmin=0, humTmax=0, inicio4=0, iniciop4=HIGH, inicio5=0, iniciop5=HIGH; //Humedad Tierra int borrar=0; //rele const int rele1 = 53; //rele 1 = activa iluminacion led const int rele2 = 51; //rele 2 = activa bomba riego const int rele3 = 49; //rele 3 = activa ventiladores const int rele4 = 47; //rele 4 = Peltier 1 const int rele5 = 45; //rele 5 = Peltier2 const int rele6 = 43; //rele 6 = ventilador peltier const int rele7 = 41; const int rele8 = 39; void setup() // establecer la configuración de pines a usar. { pinMode(rele1, OUTPUT);//inicializar los rele como salida en HIGH pinMode(rele2, OUTPUT); pinMode(rele3, OUTPUT); pinMode(rele4, OUTPUT); pinMode(rele5, OUTPUT); pinMode(rele6, OUTPUT); pinMode(rele7, OUTPUT); pinMode(rele8, OUTPUT); //inicializar Lcd lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print("Inverduino"); lcd.setCursor(5, 1); lcd.print("By: Linero"); delay(2000); Serial.begin(9600); Serial.println("DHTxx test!"); dht.begin(); // Inicializa el puerto serie a 9600 baudios pinMode(inPin1, INPUT); // Inicializa el pin como entrada digital pinMode(inPin2, INPUT); // Inicializa el pin como entrada digital pinMode(inPin3, INPUT); // Inicializa el pin como entrada digital pinMode(interruptor, INPUT); //PIN 28 ENTRADA DIGITAL pinMode(DHTPIN, INPUT); //pinMode(, INPUT); digitalWrite(rele1,HIGH); digitalWrite(rele2,HIGH);

Page 71: Proyecto inverduino

Inverduino

digitalWrite(rele3,HIGH); digitalWrite(rele4,HIGH); digitalWrite(rele5,HIGH); digitalWrite(rele6,HIGH); } void loop() // Lazo que se repite indefinidamente { if(conf==0){ if(automatico==0){//configuracion automatica if (digitalRead(interruptor)==HIGH){ // Serial.print("\nClimatizacion Automatica: \n"); lcd.clear(); lcd.setCursor(0, 0); lcd.print("Climatizacion "); lcd.setCursor(0, 1); lcd.print("Automatica"); delay(2000); tempm=12;//temperatura minima tempM=25;//temperatura maxima humm=30;//humedad minima humM=75;//humedad maxima } } automatico=1; if (digitalRead(interruptor)==LOW){ lcd.clear(); lcd.setCursor(0, 0); lcd.print("Climatizacion "); lcd.setCursor(0, 1); lcd.print("Manual"); delay(2000); //temperatura minima if(inicio1==0){ lcd.clear(); do{ if (digitalRead(inPin1)==HIGH) { tempm=tempm+1; } if (digitalRead(inPin2)==HIGH) { tempm=tempm-1; } lcd.setCursor(0, 0); lcd.print("Temp Minima:"); lcd.setCursor(0, 1);

Page 72: Proyecto inverduino

Inverduino

lcd.print(tempm); /* Serial.print("\nMinima: "); Serial.print(tempm); Serial.print("\n");*/ delay(200); iniciop1=digitalRead(inPin3); } while(iniciop1==LOW); } inicio1=1; lcd.clear(); //temperatura maxima if(inicio==0){ do{ if (digitalRead(inPin1)==HIGH) { tempM=tempM+1; } if (digitalRead(inPin2)==HIGH) { tempM=tempM-1; } lcd.setCursor(0, 0); lcd.print("Temp Maxima:"); lcd.setCursor(0, 1); lcd.print(tempM); /* Serial.print("\nMaxima: "); Serial.print(tempM); Serial.print("\n");*/ delay(200); iniciop=digitalRead(inPin3); } while(iniciop==LOW); } inicio=1; lcd.clear(); //humedad minima if(inicio2==0){ do{ if (digitalRead(inPin1)==HIGH) { humm=humm+1; } if (digitalRead(inPin2)==HIGH) { humm=humm-1; }

Page 73: Proyecto inverduino

Inverduino

lcd.setCursor(0, 0); lcd.print("Hum Minina"); lcd.setCursor(0, 1); lcd.print(humm); /* Serial.print("\nMaxima: "); Serial.print(tempM); Serial.print("\n");*/ delay(200); iniciop2=digitalRead(inPin3); } while(iniciop2==LOW); } inicio2=1; lcd.clear(); //humedad minima if(inicio3==0){ do{ if (digitalRead(inPin1)==HIGH) { humM=humM+1; } if (digitalRead(inPin2)==HIGH) { humM=humM-1; } lcd.setCursor(0, 0); lcd.print("Hum Maxima"); lcd.setCursor(0, 1); lcd.print(humM); /* Serial.print("\nMaxima: "); Serial.print(tempM); Serial.print("\n");*/ delay(200); iniciop3=digitalRead(inPin3); } while(iniciop3==LOW); } inicio3=1; } conf=1; } ///// // h=0; // t=0; dht.begin(); //lectura temperatura/humedad h = dht.readHumidity(); //delay(250);

Page 74: Proyecto inverduino

Inverduino

t = dht.readTemperature(); //delay(250); //delay(1000); //////Activar peltier y ventiladores segun temperatura if(t<tempm){ digitalWrite(rele5,HIGH); digitalWrite(rele4,LOW); } else{ digitalWrite(rele4,HIGH); digitalWrite(rele5,HIGH); } if(t>tempM){ digitalWrite(rele4,HIGH); digitalWrite(rele5,LOW); } else{ digitalWrite(rele5,HIGH); digitalWrite(rele4,HIGH); } //activar ventiladores segun humedad/temperatura delay(100); if(h<humm || h>humM || t>=tempM ||t<tempm){ digitalWrite(rele3,LOW); } else{ digitalWrite(rele3,HIGH); } //Humedad Tierra //lectura sensor y obtener datos segun porcentaje(prueba) int sensorValue = analogRead(A0); sensorValue = constrain(sensorValue, 485, 1023); soil = map(sensorValue, 485, 1023, 100, 0);//variable soil ,porcentaje de humedad del terreno segun estos datos activariamos o no bomba de riego. delay(500);//retardo medio segundo //Comprobacion del deposito de agua ///Activacion de la bomba Serial.print(ultrasonic.Ranging(CM)); D=(ultrasonic.Ranging(CM));//lectura del sensor de ultrasonidos ,distancia en vacio del deposito 30cm delay(100); if(D >= 10){ digitalWrite(rele2,HIGH); //no tiene suficiente agua,activariamos alarma } if(D<9){

Page 75: Proyecto inverduino

Inverduino

if(soil < 30){//necesidadad de regar digitalWrite(rele2,LOW); } if(soil> 30){ digitalWrite(rele2,HIGH); } } /*LDR (analogRead(ldr));//lectura de datos de ldr delay(100); //Activar iluminacion led*/ int sensorValue1 = analogRead(A1); sensorValue1 = constrain(sensorValue1, 230, 625); ldr = map(sensorValue1, 230, 625, 100, 0); if((ldr)<20){ digitalWrite(rele1,LOW); } else{ digitalWrite(rele1,HIGH); } //Lcd,ultimo...... if(borrar==0){ lcd.clear(); } borrar=1; // lcd.clear(); h = dht.readHumidity(); t = dht.readTemperature(); //sacra info en lcd //info temperatura lcd.setCursor(0,0); lcd.print("T:"); //limpiamos lcd.setCursor(3,0); lcd.print(" "); //info temperatura lcd.setCursor(3,0); lcd.print(t); //info humedad lcd.setCursor(0,1); lcd.print("H:"); //limpiamos lcd.setCursor(3,1); lcd.print(" ");

Page 76: Proyecto inverduino

Inverduino

//info humedad lcd.setCursor(3,1); lcd.print(h); //info luz lcd.setCursor(0,2); lcd.print("% Luz:"); //limpiar linea lcd.setCursor(6,2); lcd.print(" "); // lcd.setCursor(6,2); lcd.print(ldr); //info humedad tierra lcd.setCursor(0,3); lcd.print("H tierra:"); //limpiamos linea lcd.setCursor(9,3); lcd.print(" "); //info soil lcd.setCursor(9,3); lcd.print(soil); //info deposito lcd.setCursor(10,0); lcd.print("D:"); //limpiar linea lcd.setCursor(12,0); lcd.print(" "); //info deposito lcd.setCursor(12,0); lcd.print(D); }

Page 77: Proyecto inverduino

Inverduino

4. PLANOS Y ESQUEMAS

Page 78: Proyecto inverduino

Inverduino

• Esquema mediante FRITZING configuración manual

Page 79: Proyecto inverduino

Inverduino

• Esquema mediante FRITZING sensor temperatura/humedad DHT22

Page 80: Proyecto inverduino

Inverduino

• Esquema mediante FRITZING sensor ultrasonidos HC-SR04

Page 81: Proyecto inverduino

Inverduino

• Esquema mediante FRITZING sensor iluminación LDR

Page 82: Proyecto inverduino

Inverduino

• Esquema mediante FRITZING lcd 20x4

Page 83: Proyecto inverduino

Inverduino

5. PLIEGO DE CONDICIONES

Page 84: Proyecto inverduino

Inverduino

5.1. Normativa de obligado cumplimiento

- UNE 20-050-74 (I). Código para las marcas de resistencias y condensadores. Valores y tolerancias. - UNE 20-524-75 (I). Técnica circuitos impresos. Parámetros fundamentales. Sistemas de cuadrícula. - UNE 20-524. Equipos electrónicos y sus componentes. Soldabilidad de circuitos impresos. - UNE 20-524-77 (II). Técnica de circuitos impresos. Terminología - UNE 20-531-73. Series de valores nominales para resistencias y condensadores. - UNE 20-543-85 (I) .Condensadores fijos en equipos electrónicos. - UNE 20-545-89. Resistencias fijas para equipos electrónicos. OTRAS: - UNE 20916: 1995: Estructuras mecánicas para equipos electrónicos. Terminología. - UNE 21302-2: 1973: Vocabulario electrotécnico. Electrónica de potencia. - UNE 21302-551: 1996: Vocabulario electrotécnico internacional. Parte 705 propagación de las ondas de radio. - UNE 21352: 1976: explicación de las cualidades y funcionamiento de equipos de media electrónicos. - UNE-EN60933: sistemas de audio, video y audiovisuales. Interconexiones y valores de adaptación. - UNE-EN61000-4-3-1998: Compatibilidad electromagnética. - UNE-EN61030: 1997: Sistemas de audio, video y audio visuales. Bus digital doméstico. - EN50090-3-2-1995: Sistemas electrónicos para viviendas y edificios. - EN60852-4: 1996: Dimensiones externas de transformadores e inductancias destinadas a equipos electrónicos y de telecomunicaciones. - EN61021-1: 1997: Núcleos de chapas laminadas para transformadores e inductancias destinadas a ser utilizadas en equipos electrónicos y de telecomunicaciones. - EN123500: 1992: Especificación intermedia: placas de circuitos impresos flexibles con taladros para la inserción de componentes.

5.2. Proceso de fabricación

- Preparación de componentes: Primero se adquieren los componentes teniendo en cuenta sus especificaciones técnicas, a continuación se obtienen las placas de circuito impreso, basándonos en las pautas anteriores. Como último punto, montaje de componentes en placa de circuito impreso y soldadura. - Obtención de circuito impreso: El material elegido es la baquelita, de 1.7mm de grosor obteniendo así mayor resistencia térmica y a los cambios climáticos y mecánicos. - Soldadura y montaje de componentes en placa de circuito impreso: Se debe tener muy en cuenta la manipulación de los componentes, ya que este material es susceptible a la hora de su transporte e instalación en circuito impreso. Los dos circuitos integrados de nuestro proyecto deben ser instalados en zócalos, para su instalación, también debemos prever el lugar y la indumentaria del personal de montaje, ya que estos pueden acumular cargas electrostáticas.

Page 85: Proyecto inverduino

Inverduino

5.3. Cláusulas sobre garantías, plazo de ejecución, etc. …

Este tipo de cláusulas intentan proteger a las partes de posibles errores de manipulación del equipo diseñado, así como establecer un período de garantía de funcionamiento del equipo. Reconocimiento de los materiales. El cliente queda autorizado a utilizar para el desarrollo de este proyecto los materiales que cumplan las condiciones indicadas en el pliego de condiciones., sin necesidad de reconocimiento previo de la empresa proyectista, siempre y cuando se trate de materiales de procedencia reconocida y suministros normales. Indemnizaciones por daños y perjuicios. El cliente no tendrá derecho a indemnización por causas de pérdidas, averías o perjuicios ocasionados en el desarrollo del proyecto. Será de cuenta de la empresa contratista indemnizar a quien corresponda y cuando a ello hubiere lugar, de todos los daños y perjuicios que puedan causarse por las operaciones de desarrollo y ejecución del proyecto. El contratista será el responsable de todos los accidentes que sobrevinieran durante la instalación del equipo electrónico, de cualquier avería o accidente. Plazos de ejecución. Se indican en el contrato y empezarán a contar partir de la fecha en que se comunique a la empresa proyectista la adjudicación del proyecto. Los retrasos debidos a causas ajenas a la voluntad de ésta serán motivo de prórroga. El retraso en el pago de cualquier valoración superior a partir de la fecha de la misma, se considerará motivo de prórroga por igual plazo Recepción provisional. Una vez terminado el equipo electrónico en los quince días siguientes a la petición de la empresa proyectista se hará la recepción provisional del equipo por la empresa contratista, requiriendo para ello la presencia de una persona autorizada para cada empresa y levantándose por duplicado el acta correspondiente que firmarán las partes. Si se detectasen fallos de funcionamiento, la empresa contratista lo comunicará por escrito a la empresa proyectista para su reparación fijando un plazo prudencial. Periodo de garantía. Como garantía de la bondad de la obra se descontará a la empresa contratista la última liquidación, el 3% del importe total de la obra.

5.4. Cláusulas de índole económica.

En estas cláusulas se suele determinar la forma de pago en las distintas fases del proyecto: Pagos valorados. Mensualmente se hará, entre la empresa proyectista y la contratista, una valoración del proyecto desarrollado, con arreglo a los precios establecidos y con los planos y referencias necesarias para su comprobación. La comprobación y aceptación deberán quedar determinadas en 15 días. Abonos de materiales. Cuando a juicio de la empresa contratista no exista peligro de hurto de los componentes adquiridos para el desarrollo del equipo electrónico, éstos se abonarán antes de la finalización del proyecto según establezcan las partes, no obstante la empresa contratista podrá exigir las garantías necesarias para evitar la salida o deterioro de los componentes abonados.

Page 86: Proyecto inverduino

Inverduino Descuento por equipo defectuoso. La empresa contratista podrá proponer a la empresa proyectista la aceptación de estas taras con la rebaja económica que estime oportuna si se ha observado defectos de funcionamiento en el equipo electrónico diseñado con relación a lo exigido en el pliego de condiciones. Si no quedara satisfecho la empresa contratista con la rebaja quedará obligada al rediseño y construcción de toda la parte del equipo electrónico afectada por los efectos señalados. Revisión de costos. Se revisarán los costos siempre que resulten modificados las condiciones económicas de los costos de materiales en una diferencia superior al 5% al valor prefijado del precio estipulado en el presupuesto. Cuando la empresa contratista requiera la ampliación de alguna de las especificaciones o características del equipo electrónico se deberá realizar un estudio económico del sobreprecio a pagar por la empresa contratista. De no haber acuerdo, la empresa proyectista quedará relevada del compromiso de ejecución quedando obligada al empresa contratista al abono total de todos los costes de mano de obra, y similares desembolsados hasta el momento por la empresa proyectista. Abono de obras. Los pagos valorados se abonarán dentro del mes siguiente a la fecha de redacción. Cualquier retraso sobre estos plazos será indemnizado con el interés oficial para efectos comerciales fijado por el Banco de España. Liquidación definitiva. En el plazo máximo de un mes desde la recepción del equipo electrónico por parte de la empresa contratista ésta deberá realizar la liquidación definitiva. De existir fianza, éste se devolverá en el mes siguiente a la finaliza. 5.5. Cláusulas de índole legal En estas cláusulas se delimitan las condiciones en las que ambas partes podrán rescindir el contrato de construcción del equipo electrónico objeto del proyecto. Modificaciones de obra. El diseño del equipo electrónico podrá ser cambiado total o parcialmente por la empresa contratista, no obstante si la empresa proyectista se considera perjudicada en sus intereses, solicitará la indemnización a que se considere acreedora, y cuya estimación someterán las partes a la decisión de la comisión arbitral. En los casos de suspensión no correrá el plazo. Derecho de rescisión. La empresa proyectista podrá rescindir el contrato en los siguientes casos: 1. Cuando las variaciones introducidas en el equipo electrónico aumenten o disminuyan el importe total de ésta de un 20%. 2. Cuando por razones ajenas a la empresa proyectista pase más de un años sin poder trabajar en el equipo electrónico. 3. Cuando se retrase más de seis meses el pago de alguno de los pagos valorados estipulados. Rescisión por incumplimiento del contrato. En el caso de retraso injustificado sobre los plazos fijados se impondrá a la empresa proyectista una multa de 1,5% del presupuesto asignado como pago valorado. Liquidación en caso de rescisión. Se hará una liquidación única que será la definitiva con arreglo a lo estipulado en este pliego.

Page 87: Proyecto inverduino

Inverduino Cuestiones no previstas o reclamaciones. Todas las cuestiones que pudieran surgir sobre interpretación, perfeccionamiento y cumplimiento de las condiciones del contrato entre ambas partes serán resueltas por la comisión arbitral. La comisión arbitral deberá dictar resolución después de oídas las partes dentro de los quince días siguientes al planteamiento del asunto ante la misma. Durante este plazo, la empresa proyectista deberá acatar las órdenes de trabajo indicadas por la empresa contratista sin perjuicio de proclamar las indemnizaciones correspondientes si la resolución le fuese favorable. Entre las resoluciones dictadas por la comisión arbitral figurará en todo caso la proposición en que cada una de las partes deberá participar en el abono de los horarios de las personas que forman la comisión y de los peritos cuyo informe haya sido solicitado por ella.

Page 88: Proyecto inverduino

Inverduino

6. PRESUPUESTO

Page 89: Proyecto inverduino

Inverduino

• Presupuestos Parciales - Presupuesto de componentes y material varios

CANTIDAD CONCEPTO PECIO UNITARIO TRANSPORTE IVA TOTAL 1 Arduino Mega 18 1 21% 22,99 € 1 DHT-22 2 1 21% 3,63 € 1 HC-SR04 1,5 1 21% 3,03 €

10 Resistencias 10k ohm 0,2 1 21% 3,63 € 1 Celula Peltier 6 1 21% 8,47 € 1 Bomba de agua sumergible 9 1 21% 12,10 € 1 Buzzer 0,25 0 21% 0,30 € 1 Lcd 20x4 9 0 21% 10,89 € 1 Adaptador I2C 1 0 21% 1,21 € 1 Modulo Rele 8 canales 7 0 21% 8,47 € 1 Invernadero 10 1 21% 13,31 € 1 Soil humedad tierra 1 0 21% 1,21 € 1 Tuberias riego 2 0 21% 2,42 € 1 Deposito agua 2 0 21% 2,42 € 1 Caja unidad control 2 0 21% 2,42 €

Total 96,50 €

• Presupuesto Mano de Obra

Horas Concepto Precio Unidad IVA Total 15 Horas Diseño 10 21% 181,50 € 40 Horas técnico 8 21% 387,20 €

568,70 €

Page 90: Proyecto inverduino

Inverduino

• Presupuesto de Medios auxiliares e instrumentación

Cantidad Concepto Precio Unitario IVA Transporte Total 2 Cinta aislante 0,75 21% 0 1,82 € 1 Tubo silicona 1,1 21% 0 1,33 € 1 Rollo Estaño 100gr 0,5 21% 0 0,61 € 1 flux 0,5 21% 0 0,61 €

10 Clemas 0,3 21% 0 3,63 € 1 Presillas 1,1 21% 0 1,33 € 1 Rollo cable 1,5mm 5 21% 0 6,05€

Total 15,37€

• Presupuesto general

Cantidad Concepto Precio Unitario Total 1 Coste de Componentes 96,50 € 96,50 € 1 Coste de medios Auxiliares 568,70 € 568,70 € 1 Coste de mano de obra 9,32 € 15,37€ €

Total 680,57 €

El coste total asciende a seiscientos ochenta con cincuenta y siete céntimos de euro.

Nombre de la empresa: LineroTech SA. Dirección: C/ Electronika s/n. Tlfno: 952 696 969 Fax: 952 123 876 e-mail: [email protected] Pagina web: http://linerotech.wordpress.com/

Malaga,17 de Marzo de 2014 JOSE ANTONIO LINERO MADRID

FDO:

Page 91: Proyecto inverduino

Inverduino

Malaga,17 de Marzo de 2014 JOSE ANTONIO LINERO MADRID

FDO: