Projecte Final de Carrera - Domotització d un jardí domèstic Annex 1

Size: px
Start display at page:

Download "Projecte Final de Carrera - Domotització d un jardí domèstic Annex 1"

Transcription

1 Marc Flores Nogués Juny 2009 Projecte Final de Carrera - Domotització d un jardí domèstic Annex 1

2 Public Sector1 As Boolean Public Sector2 As Boolean Public Sector3 As Boolean Public Sector6 As Boolean Public Sensor1 As Boolean Public Detector1 As Boolean Public Humitatseto As Boolean Public Detectorcarrer As Boolean Public Detectorentrada As Boolean Public Detectorgaratge As Boolean Public Simulacio As Boolean Public Pararllumjardi As Boolean Public Mostrarentrades As Boolean Public Horapararllumjardi As Single Public Fuente As Boolean Public Llum As Boolean Public Marxafont As Boolean Public Marxallumentrada As Boolean Public Marxallumentradaauto As Boolean Public Marxallumjardi As Boolean Public Horamarxafont As Single Public Horaaturadafont As Single Public Marxaseto As Boolean Public Hora1marxaseto As Single Public Hora1aturadaseto As Single Public Hora2marxaseto As Single Public Hora2aturadaseto As Single Public Marxaparterres As Boolean Public Hora1marxaparterres As Single Public Hora1aturadaparterres As Single Public Hora2marxaparterres As Single Public Hora2aturadaparterres As Single Public Marxaarbres As Boolean Public Hora1marxaarbres As Single Public Hora1aturadaarbres As Single Public Hora2marxaarbres As Single Public Hora2aturadaarbres As Single Public Marxagespa As Boolean Public Hora1marxagespa As Single Public Hora1aturadagespa As Single Public Hora2marxagespa As Single Public Hora2aturadagespa As Single Public Flageditant As Boolean Public Horaparadamanualseto As Single Public Horaparadamanualarbres As Single Public Horaparadamanualparterres As Single Public Horaparadamanualgespa As Single Public Horamarxamanualseto As Single Public Horamarxamanualarbres As Single Public Horamarxamanualparterres As Single Public Horamarxamanualgespa As Single Public LlumEntrada As Boolean Public Programaactiu As Byte Public FalloComunicacio As Boolean Annex 1-1

3 Type Record CampDillunsSeto As Byte CampDimartsSeto As Byte CampDimecresSeto As Byte CampDijousSeto As Byte CampDivendresSeto As Byte CampDissabteSeto As Byte CampDiumengeSeto As Byte CampDillunsArbres As Byte CampDimartsArbres As Byte CampDimecresArbres As Byte CampDijousArbres As Byte CampDivendresArbres As Byte CampDissabteArbres As Byte CampDiumengeArbres As Byte CampDillunsParterres As Byte CampDimartsParterres As Byte CampDimecresParterres As Byte CampDijousParterres As Byte CampDivendresParterres As Byte CampDissabteParterres As Byte CampDiumengeParterres As Byte CampDillunsGespa As Byte CampDimartsGespa As Byte CampDimecresGespa As Byte CampDijousGespa As Byte CampDivendresGespa As Byte CampDissabteGespa As Byte CampDiumengeGespa As Byte CampHora1marxaseto As Byte CampMinut1marxaseto As Byte CampSegon1marxaseto As Byte CampHora1aturadaseto As Byte CampHora2marxaseto As Byte CampMinut2marxaseto As Byte CampSegon2marxaseto As Byte CampHora2aturadaseto As Byte CampHora1marxaarbres As Byte CampMinut1marxaarbres As Byte CampSegon1marxaarbres As Byte CampHora1aturadaarbres As Byte CampHora2marxaarbres As Byte CampMinut2marxaarbres As Byte CampSegon2marxaarbres As Byte CampHora2aturadaarbres As Byte CampHora1marxaparterres As Byte CampMinut1marxaparterres As Byte CampSegon1marxaparterres As Byte CampHora1aturadaparterres As Byte CampHora2marxaparterres As Byte CampMinut2marxaparterres As Byte CampSegon2marxaparterres As Byte CampHora2aturadaparterres As Byte CampHora1marxagespa As Byte CampMinut1marxagespa As Byte Annex 1 Annex 1-2

4 CampSegon1marxagespa As Byte CampHora1aturadagespa As Byte CampHora2marxagespa As Byte CampMinut2marxagespa As Byte CampSegon2marxagespa As Byte CampHora2aturadagespa As Byte CampHoramarxafont As Byte CampMinutmarxafont As Byte CampSegonmarxafont As Byte CampHoraaturadafont As Byte CampMinutaturadafont As Byte CampSegonaturadafont As Byte CampHoraaturadageneral As Byte CampMinutaturadageneral As Byte CampSegonaturadageneral As Byte End Type Public Registre As Record Annex 1 Public Sub Comunicacio() Dim mensaje As String Dim X As Integer Dim Buffer As Variant Dim ValorEntrades() As Byte If Marxaseto = True Then X = 128 X = 0 If Marxaarbres = True Then X = X + 64 If Marxaparterres = True Then X = X + 32 If Marxagespa = True Then X = X + 16 If Marxafont = True Then X = X + 8 If Marxallumentrada = True Then X = X + 4 If Marxallumjardi = True Then X = X + 2 PFC.tmrComunicacio.Enabled = True mensaje = "**" + Chr(X) + "#" PFC.MSComm1.Output = mensaje While (PFC.MSComm1.InBufferCount < 3) And (FalloComunicacio = False) DoEvents Wend If FalloComunicacio = True Then If PFC.lblComunicacio.Visible = False Then PFC.lblComunicacio.Visible = True Annex 1-3

5 PFC.lblComunicacio.Visible = False PFC.lblComunicacio.Visible = False PFC.tmrComunicacio.Enabled = False If FalloComunicacio = False Then Buffer = PFC.MSComm1.Input ValorEntrades = Buffer ValorEntrades(0) = ValorEntrades(0) Xor 255 If (ValorEntrades(0) And 1) = 1 Then Humitatseto = True Humitatseto = False If (ValorEntrades(0) And 2) = 2 Then Detectorentrada = True Detectorentrada = False If (ValorEntrades(0) And 4) = 4 Then Detectorgaratge = True Detectorgaratge = False If (ValorEntrades(0) And 8) = 8 Then Detectorcarrer = True Detectorcarrer = False If (ValorEntrades(0) And 16) = 16 Then Sensor1 = True Sensor1 = False Marxallumentradaauto = False If (ValorEntrades(0) And 32) = 32 Then Detector1 = True Detector1 = False If (ValorEntrades(0) And 128) = 128 Then Pararllumjardi = True PFC.Funcionpararllumjardi Pararllumjardi = False PFC.tmrComunicacio.Enabled = False Annex 1-4

6 Private Sub Form_Initialize() Sensor1 = False cmdhumitatseto.visible = False cmddetectorentrada.visible = False cmddetectorgaratge.visible = False cmddetectorcarrer.visible = False cmdsensor1.visible = False cmddetector1.visible = False cmdpararllumjardi.visible = False Programaactiu = 0 lblprogramaactual.caption = "Cap programa seleccionat" MSComm1.PortOpen = True Private Sub FuncionDiasetmana() 'Funció per a reconèixer els dies de la setmana, i ser mostrats en lbldiasetmana. If Weekday(Date, 2) = 1 Then lbldiasetmana.caption = "Dilluns" If Weekday(Date, 2) = 2 Then lbldiasetmana.caption = "Dimarts" If Weekday(Date, 2) = 3 Then lbldiasetmana.caption = "Dimecres" If Weekday(Date, 2) = 4 Then lbldiasetmana.caption = "Dijous" If Weekday(Date, 2) = 5 Then lbldiasetmana.caption = "Divendres" If Weekday(Date, 2) = 6 Then lbldiasetmana.caption = "Dissabte" If Weekday(Date, 2) = 7 Then lbldiasetmana.caption = "Diumenge" Private Sub Funcionseto() 'Funció per la qual es dirigeix / automtitza el funcionament del Secto1 (Setos) en qualsevol dels dos modes Automàtic / Manual (Idem per Funcionarbres,Funcionparterres i Funciongespa) If Flageditant = False Then Hora1marxaseto = (txthora1marxaseto * 3600) + (txtminut1marxaseto * 60) + txtsegon1marxaseto Hora1aturadaseto = Hora1marxaseto + (txthora1aturadaseto * 60) Hora2marxaseto = (txthora2marxaseto * 3600) + (txtminut2marxaseto * 60) + txtsegon2marxaseto Hora2aturadaseto = Hora2marxaseto + (txthora2aturadaseto * 60) 'Calculs per a obtenir les hores de marxaseto / aturadaseto en segons, ja que han de coincidir amb Int(Timer()). If OptAuto = True And (((Int(Timer()) = Hora1marxaseto) Or (Int(Timer()) = Hora2marxaseto)) And chkseto(weekday(date, 2) - 1).Value = 1) And Not (chkhabilitarsensors = 1 And Humitatseto = True) Then 'Amb Int(Timer()) obliguem a que el valor de l'hora singui enter (per defecte traballa amb 2 decimals) i així conicideixi amb els valors que hem entrat(enters). Marxaseto = True Annex 1-5

7 If OptAuto = True And ((Int(Timer()) = Hora1aturadaseto) Or ((Int(Timer()) = Hora2aturadaseto))) Then 'OptAuto condiciona que estigui en mode automàtic. Marxaseto = False If OptMan = True And (Horaparadamanualseto = Int(Timer())) Then Marxaseto = False If Marxaseto = False Then 'Marxaseto controla directament el funcionament del Sector1 (Setos), tant si es de manera automàtica o manual(cmdsector1). cmdsector1.caption = "Sector 1 (Setos) Arrancar" Sector1 = False tmrintermitencia1.enabled = False Sector11.Visible = False Sector12.Visible = False Sector13.Visible = False Sector14.Visible = False If Marxaseto = True Then cmdsector1.caption = "Sector 1 (Setos) Parar" Sector1 = True tmrintermitencia1.enabled = True Sector11.Visible = True Sector12.Visible = True Sector13.Visible = True Sector14.Visible = True Private Sub Funcionparterres() If Flageditant = False Then Hora1marxaparterres = (txthora1marxaparterres * 3600) + (txtminut1marxaparterres * 60) + txtsegon1marxaparterres Hora1aturadaparterres = Hora1marxaparterres + (txthora1aturadaparterres * 60) Hora2marxaparterres = (txthora2marxaparterres * 3600) + (txtminut2marxaparterres * 60) + txtsegon2marxaparterres Hora2aturadaparterres = Hora2marxaparterres + (txthora2aturadaparterres * 60) If OptAuto = True And ((Int(Timer()) = Hora1marxaparterres) Or (Int(Timer()) = Hora2marxaparterres)) And (chkparterres(weekday(date, 2) - 1).Value = 1) And Not (chkhabilitarsensors = 1 And Humitatseto = True) Then Marxaparterres = True If OptAuto = True And (Int(Timer()) = Hora1aturadaparterres) Or ((Int(Timer()) = Hora2aturadaparterres)) Then Marxaparterres = False If OptMan = True And (Horaparadamanualparterres = Int(Timer())) Then Marxaparterres = False If Marxaparterres = False Then cmdsector3.caption = "Sector 3 (Parterres) Arrancar" Sector3 = False tmrintermitencia3.enabled = False Sector31.Visible = False Sector32.Visible = False Annex 1-6

8 Sector41.Visible = False Sector42.Visible = False Sector51.Visible = False Sector52.Visible = False If Marxaparterres = True Then cmdsector3.caption = "Sector 3 (Parterres) Parar" Sector3 = True tmrintermitencia3.enabled = True Sector31.Visible = True Sector32.Visible = True Sector41.Visible = True Sector42.Visible = True Sector51.Visible = True Sector52.Visible = True Private Sub Funcionarbres() If Flageditant = False Then Hora1marxaarbres = (txthora1marxaarbres * 3600) + (txtminut1marxaarbres * 60) + txtsegon1marxaarbres Hora1aturadaarbres = Hora1marxaarbres + (txthora1aturadaarbres * 60) Hora2marxaarbres = (txthora2marxaarbres * 3600) + (txtminut2marxaarbres * 60) + txtsegon2marxaarbres Hora2aturadaarbres = Hora2marxaarbres + (txthora2aturadaarbres * 60) If OptAuto = True And ((Int(Timer()) = Hora1marxaarbres) Or (Int(Timer()) = Hora2marxaarbres)) And (chkarbres(weekday(date, 2) - 1).Value = 1) And Not (chkhabilitarsensors = 1 And Humitatseta = True) Then Marxaarbres = True If OptAuto = True And (Int(Timer()) = Hora1aturadaarbres) Or ((Int(Timer()) = Hora2aturadaarbres)) Then Marxaarbres = False If OptMan = True And (Horaparadamanualarbres = Int(Timer())) Then Marxaarbres = False If Marxaarbres = False Then cmdsector2.caption = "Sector 2 (Arbres) Arrancar" Sector2 = False tmrintermitencia2.enabled = False Sector21.Visible = False Sector22.Visible = False If Marxaarbres = True Then cmdsector2.caption = "Sector 2 (Arbres) Parar" Sector2 = True tmrintermitencia2.enabled = True Sector21.Visible = True Sector22.Visible = True Private Sub Funciongespa() If Flageditant = False Then Annex 1-7

9 Hora1marxagespa = (txthora1marxagespa * 3600) + (txtminut1marxagespa * 60) + txtsegon1marxagespa Hora1aturadagespa = Hora1marxagespa + (txthora1aturadagespa * 60) Hora2marxagespa = (txthora2marxagespa * 3600) + (txtminut2marxagespa * 60) + txtsegon2marxagespa Hora2aturadagespa = Hora2marxagespa + (txthora2aturadagespa * 60) If OptAuto = True And ((Int(Timer()) = Hora1marxagespa) Or (Int(Timer()) = Hora2marxagespa)) And (chkgespa(weekday(date, 2) - 1).Value = 1) And Not (chkhabilitarsensors = 1 And Humitatseto = True) Then Marxagespa = True If OptAuto = True And (Int(Timer()) = Hora1aturadagespa) Or ((Int(Timer()) = Hora2aturadagespa)) Then Marxagespa = False If Detector1 = True And OptAuto = True Then Marxagespa = False If OptMan = True And (Horaparadamanualgespa = Int(Timer())) Then Marxagespa = False If Marxagespa = False Then cmdsector6.caption = "Sector 4 (Gespa) Arrancar" Sector6 = False tmrintermitencia6.enabled = False For X = 0 To 28 RegSector6(X).Visible = False Next If Marxagespa = True Then cmdsector6.caption = "Sector 4 (Gespa) Parar" Sector6 = True tmrintermitencia6.enabled = True For X = 0 To 28 RegSector6(X).Visible = True Next Private Sub Funcionduradamanual() 'Funció que calcula el temps de durada quan s'activa el Sector 1 (Setos)de manera manual.(idem per Sector 2(arbres),Sector 3(Parterres) i Sector 6(Gespa)) If txtduradamanualseto > 0 Then Horaparadamanualseto = (Horamarxamanualseto + txtduradamanualseto * 60) If (Horaparadamanualseto > 86399) Then Horaparadamanualseto = (Horamarxamanualseto + txtduradamanualseto * 60) 'Si la xifra resultant és més gran que (durada d'un dia en segons), se li haurà de restar aquesta xifra ja que així obtindrem un valor correcte, sino el valor no correspondria mai. Horaparadamanualseto = Int(Timer()) - 1 'En cas de que el temps de la durada sigui 0 o inferior, se li dona aquest valor a l'hora d'aturada per a que no pari automaticament mai. Annex 1-8

10 If txtduradamanualarbres > 0 Then Horaparadamanualarbres = (Horamarxamanualarbres + txtduradamanualarbres * 60) If (Horaparadamanualarbres > 86399) Then Horaparadamanualarbres = (Horamarxamanualarbres + txtduradamanualarbres * 60) Horaparadamanualarbres = Int(Timer()) - 1 If txtduradamanualparterres > 0 Then Horaparadamanualparterres = (Horamarxamanualparterres + txtduradamanualparterres * 60) If (Horaparadamanualparterres > 86399) Then Horaparadamanualparterres = (Horamarxamanualparterres + txtduradamanualparterres * 60) Horaparadamanualparterres = Int(Timer()) - 1 If txtduradamanualgespa > 0 Then Horaparadamanualgespa = (Horamarxamanualgespa + txtduradamanualgespa * 60) If (Horaparadamanualgespa > 86399) Then Horaparadamanualgespa = (Horamarxamanualgespa + txtduradamanualgespa * 60) Horaparadamanualgespa = Int(Timer()) - 1 Private Sub Funcionduradaautomatica() 'Funció que calcula el temps de durada quan s'activa automaticament el Sector 1 (Setos).(Idem per Sector 2(arbres),Sector 3(Parterres) i Sector 6(Gespa)) Hora1aturadaseto = (Hora1marxaseto + txthora1aturadaseto * 60) If (Hora1aturadaseto > 86399) Then Hora1aturadaseto = (Hora1marxaseto + txthora1aturadaseto * 60) 'Si la xifra resultant és més gran que (durada d'un dia en segons), se li haurà de restar aquesta xifra ja que així obtindrem un valor correcte, sino el valor no correspondria mai. Hora2aturadaseto = (Hora2marxaseto + txthora2aturadaseto * 60) If (Hora2aturadaseto > 86399) Then Hora2aturadaseto = (Hora2marxaseto + txthora2aturadaseto * 60) Hora1aturadaarbres = (Hora1marxaarbres + txthora1aturadaarbres * 60) If (Hora1aturadaarbres > 86399) Then Hora1aturadaarbres = (Hora1marxaarbres + txthora1aturadaarbres * 60) Hora2aturadaarbres = (Hora2marxaarbres + txthora2aturadaarbres * 60) If (Hora2aturadaarbres > 86399) Then Hora2aturadaarbres = (Hora2marxaarbres + txthora2aturadaarbres * 60) Hora1aturadaparterres = (Hora1marxaparterres + txthora1aturadaparterres * 60) Annex 1-9

11 If (Hora1aturadaparterres > 86399) Then Hora1aturadaparterres = (Hora1marxaparterres + txthora1aturadaparterres * 60) Hora2aturadaparterres = (Hora2marxaparterres + txthora2aturadaparterres * 60) If (Hora2aturadaparterres > 86399) Then Hora2aturadaparterres = (Hora2marxaparterres + txthora2aturadaparterres * 60) Hora1aturadagespa = (Hora1marxagespa + txthora1aturadagespa * 60) If (Hora1aturadagespa > 86399) Then Hora1aturadagespa = (Hora1marxagespa + txthora1aturadagespa * 60) Hora2aturadagespa = (Hora2marxagespa + txthora2aturadagespa * 60) If (Hora2aturadagespa > 86399) Then Hora2aturadagespa = (Hora2marxagespa + txthora2aturadagespa * 60) Private Sub Funcionllum() 'Funció per la qual es dirigeix / automtitza el funcionament deles llums en mode Automàtic. If (Sensor1 = True) And (OptAuto = True) And (Detectorentrada = True Or Detector1 = True Or Detectorcarrer = True Or Detectorgaratge = True Or Marxallumentradaauto = False) Then Marxallumentrada = True Marxallumentradaauto = True If chkllumjardi = 1 Then Marxallumjardi = True If (Sensor1 = False) And (OptAuto = True) Then Marxallumentrada = False Marxallumjardi = False If Marxallumentrada = False Then cmdllumentrada.caption = "Illuminació(Entrada) Arrancar" LlumEntrada = False LlumEntrada1.Visible = False LlumEntrada2.Visible = False LlumEntrada3.Visible = False If Marxallumentrada = True Then cmdllumentrada.caption = "Illuminació(Entrada) Parar" LlumEntrada = True LlumEntrada1.Visible = True LlumEntrada2.Visible = True LlumEntrada3.Visible = True If Marxallumjardi = True Then cmdllum.caption = "Illuminació (Jardí) Parar" Llum = True LLum1.Visible = True Llum2.Visible = True Annex 1-10

12 If Marxallumjardi = False Then cmdllum.caption = "Illuminació (Jardí) Arrancar" Llum = False LLum1.Visible = False Llum2.Visible = False Private Sub Funcionllumjardi() 'Funció per la qual es dirigeix / automtitza el funcionament deles llums del jardí en mode Automàtic. If (Sensor1 = True) And (OptAuto = True) And ((Detector1 = True) Or (Detectorentrada = True)) Then Marxallumjardi = True If Horapararllumjardi + 15 = Int(Timer()) And ((chkllumjardi = 0) Or ((LlumEntrada = False) And (chkllumjardi = 1))) Then 'Retard de 15' respecte al moment en que s'ha donat l'odre de parada. Marxallumjardi = False Public Sub Funcionpararllumjardi() 'Funció que dóna l'ordre d'aturada i memoritza quan s'ha fet per a poguer-hi aplicar el retard. If OptAuto = True And (Marxafont = True Or Marxallumjardi = True) Then Horapararllumjardi = Int(Timer()) Funcionllumjardi Funcionfuente Private Sub Funcionfuente() 'Funció per la qual es dirigeix / automtitza el funcionament de la font en qualsevol dels dos modes Automàtic / Manual If Flageditant = False Then Horamarxafont = (txthoramarxa * 3600) + (txtminutmarxa * 60) + txtsegonmarxa Horaaturadafont = (txthoraaturada * 3600) + (txtminutaturada * 60) + txtsegonaturada 'Calculs per a obtenir les hores de marxa / aturada en segons, ja que han de coincidir amb Int(Timer()). If (OptAuto = True) And (Int(Timer()) = Horamarxafont) Then 'Amb Int(Timer()) obliguem a que el valor de l'hora singui enter (per defecte traballa amb 2 decimals) i així conicideixi amb els valors que hem entrat(enters). Marxafont = True If (OptAuto = True) And (Int(Timer()) = Horaaturadafont) Then 'OptAuto condiciona que estigui en mode automàtic. Marxafont = False 'Marxa font controla directament el funcionament de la font, tant si es de manera automàtica o manual(cmdfuente). If (OptAuto = True) And ((Detector1 = True) Or (Detectorentrada = True)) Then Marxafont = True If Horapararllumjardi + 15 = Int(Timer()) Then Marxafont = False Annex 1-11

13 If Marxafont = False Then Fuente = False tmrintermitenciafuente.enabled = False Fuente1.Visible = False Fuente2.Visible = False Fuente3.Visible = False cmdfuente.caption = "Font Central Arrancar" If Marxafont = True Then Fuente = True tmrintermitenciafuente.enabled = True Fuente1.Visible = True Fuente2.Visible = True Fuente3.Visible = True cmdfuente.caption = "Font Central Parar" Private Sub FuncionObrirfitxer() Dim Nomfitxer As String Nomfitxer = "ProgramacionsGuardades.dat" Open Nomfitxer For Random As #1 Len = Len(Registre) Private Sub FuncionTancarfitxer() Close #1 Private Sub FuncionLlegirfitxer(Numeroprograma As Byte) Get #1, Numeroprograma, Registre With Registre chkseto(0).value =.CampDillunsSeto chkseto(1).value =.CampDimartsSeto chkseto(2).value =.CampDimecresSeto chkseto(3).value =.CampDijousSeto chkseto(4).value =.CampDivendresSeto chkseto(5).value =.CampDissabteSeto chkseto(6).value =.CampDiumengeSeto chkarbres(0).value =.CampDillunsArbres chkarbres(1).value =.CampDimartsArbres chkarbres(2).value =.CampDimecresArbres chkarbres(3).value =.CampDijousArbres chkarbres(4).value =.CampDivendresArbres chkarbres(5).value =.CampDissabteArbres chkarbres(6).value =.CampDiumengeArbres chkparterres(0).value =.CampDillunsParterres chkparterres(1).value =.CampDimartsParterres chkparterres(2).value =.CampDimecresParterres chkparterres(3).value =.CampDijousParterres chkparterres(4).value =.CampDivendresParterres chkparterres(5).value =.CampDissabteParterres chkparterres(6).value =.CampDiumengeParterres chkgespa(0).value =.CampDillunsGespa chkgespa(1).value =.CampDimartsGespa chkgespa(2).value =.CampDimecresGespa chkgespa(3).value =.CampDijousGespa chkgespa(4).value =.CampDivendresGespa chkgespa(5).value =.CampDissabteGespa Annex 1-12

14 chkgespa(6).value =.CampDiumengeGespa txthora1marxaseto.text =.CampHora1marxaseto txtminut1marxaseto.text =.CampMinut1marxaseto txtsegon1marxaseto.text =.CampSegon1marxaseto txthora1aturadaseto.text =.CampHora1aturadaseto txthora2marxaseto.text =.CampHora2marxaseto txtminut2marxaseto.text =.CampMinut2marxaseto txtsegon2marxaseto.text =.CampSegon2marxaseto txthora2aturadaseto.text =.CampHora2aturadaseto txthora1marxaarbres.text =.CampHora1marxaarbres txtminut1marxaarbres.text =.CampMinut1marxaarbres txtsegon1marxaarbres.text =.CampSegon1marxaarbres txthora1aturadaarbres.text =.CampHora1aturadaarbres txthora2marxaarbres.text =.CampHora2marxaarbres txtminut2marxaarbres.text =.CampMinut2marxaarbres txtsegon2marxaarbres.text =.CampSegon2marxaarbres txthora2aturadaarbres.text =.CampHora2aturadaarbres txthora1marxaparterres.text =.CampHora1marxaparterres txtminut1marxaparterres.text =.CampMinut1marxaparterres txtsegon1marxaparterres.text =.CampSegon1marxaparterres txthora1aturadaparterres.text =.CampHora1aturadaparterres txthora2marxaparterres.text =.CampHora2marxaparterres txtminut2marxaparterres.text =.CampMinut2marxaparterres txtsegon2marxaparterres.text =.CampSegon2marxaparterres txthora2aturadaparterres.text =.CampHora2aturadaparterres txthora1marxagespa.text =.CampHora1marxagespa txtminut1marxagespa.text =.CampMinut1marxagespa txtsegon1marxagespa.text =.CampSegon1marxagespa txthora1aturadagespa.text =.CampHora1aturadagespa txthora2marxagespa.text =.CampHora2marxagespa txtminut2marxagespa.text =.CampMinut2marxagespa txtsegon2marxagespa.text =.CampSegon2marxagespa txthora2aturadagespa.text =.CampHora2aturadagespa txthoramarxa.text =.CampHoramarxafont txtminutmarxa.text =.CampMinutmarxafont txtsegonmarxa.text =.CampSegonmarxafont txthoraaturada.text =.CampHoraaturadafont txtminutaturada.text =.CampMinutaturadafont txtsegonaturada.text =.CampSegonaturadafont txthoraaturadageneral.text =.CampHoraaturadageneral txtminutaturadageneral.text =.CampMinutaturadageneral txtsegonaturadageneral.text =.CampSegonaturadageneral End With Close #1 Private Sub FuncionEscriurefitxer(Numeroprograma As Byte) With Registre.CampDillunsSeto = chkseto(0).value.campdimartsseto = chkseto(1).value.campdimecresseto = chkseto(2).value.campdijousseto = chkseto(3).value.campdivendresseto = chkseto(4).value.campdissabteseto = chkseto(5).value.campdiumengeseto = chkseto(6).value.campdillunsarbres = chkarbres(0).value Annex 1-13

15 .CampDimartsArbres = chkarbres(1).value.campdimecresarbres = chkarbres(2).value.campdijousarbres = chkarbres(3).value.campdivendresarbres = chkarbres(4).value.campdissabtearbres = chkarbres(5).value.campdiumengearbres = chkarbres(6).value.campdillunsparterres = chkparterres(0).value.campdimartsparterres = chkparterres(1).value.campdimecresparterres = chkparterres(2).value.campdijousparterres = chkparterres(3).value.campdivendresparterres = chkparterres(4).value.campdissabteparterres = chkparterres(5).value.campdiumengeparterres = chkparterres(6).value.campdillunsgespa = chkgespa(0).value.campdimartsgespa = chkgespa(1).value.campdimecresgespa = chkgespa(2).value.campdijousgespa = chkgespa(3).value.campdivendresgespa = chkgespa(4).value.campdissabtegespa = chkgespa(5).value.campdiumengegespa = chkgespa(6).value.camphora1marxaseto = txthora1marxaseto.text.campminut1marxaseto = txtminut1marxaseto.text.campsegon1marxaseto = txtsegon1marxaseto.text.camphora1aturadaseto = txthora1aturadaseto.text.camphora2marxaseto = txthora2marxaseto.text.campminut2marxaseto = txtminut2marxaseto.text.campsegon2marxaseto = txtsegon2marxaseto.text.camphora2aturadaseto = txthora2aturadaseto.text.camphora1marxaarbres = txthora1marxaarbres.text.campminut1marxaarbres = txtminut1marxaarbres.text.campsegon1marxaarbres = txtsegon1marxaarbres.text.camphora1aturadaarbres = txthora1aturadaarbres.text.camphora2marxaarbres = txthora2marxaarbres.text.campminut2marxaarbres = txtminut2marxaarbres.text.campsegon2marxaarbres = txtsegon2marxaarbres.text.camphora2aturadaarbres = txthora2aturadaarbres.text.camphora1marxaparterres = txthora1marxaparterres.text.campminut1marxaparterres = txtminut1marxaparterres.text.campsegon1marxaparterres = txtsegon1marxaparterres.text.camphora1aturadaparterres = txthora1aturadaparterres.text.camphora2marxaparterres = txthora2marxaparterres.text.campminut2marxaparterres = txtminut2marxaparterres.text.campsegon2marxaparterres = txtsegon2marxaparterres.text.camphora2aturadaparterres = txthora2aturadaparterres.text.camphora1marxagespa = txthora1marxagespa.text.campminut1marxagespa = txtminut1marxagespa.text.campsegon1marxagespa = txtsegon1marxagespa.text.camphora1aturadagespa = txthora1aturadagespa.text.camphora2marxagespa = txthora2marxagespa.text.campminut2marxagespa = txtminut2marxagespa.text.campsegon2marxagespa = txtsegon2marxagespa.text.camphora2aturadagespa = txthora2aturadagespa.text.camphoramarxafont = txthoramarxa.text.campminutmarxafont = txtminutmarxa.text.campsegonmarxafont = txtsegonmarxa.text Annex 1-14

16 .CampHoraaturadafont = txthoraaturada.text.campminutaturadafont = txtminutaturada.text.campsegonaturadafont = txtsegonaturada.text.camphoraaturadageneral = txthoraaturadageneral.text.campminutaturadageneral = txtminutaturadageneral.text.campsegonaturadageneral = txtsegonaturadageneral.text End With Put #1, Numeroprograma, Registre Close #1 Private Sub Funcionelementsactius() 'Funció que permet veure l'estat de tots els elements. If Sector11.Visible = True Then shpseto.backcolor = &H8000& If Sector11.Visible = False Then shpseto.backcolor = &H F If Sector21.Visible = True Then shparbres.backcolor = &H8000& If Sector21.Visible = False Then shparbres.backcolor = &H F If Sector31.Visible = True Then shpparterres.backcolor = &H8000& If Sector31.Visible = False Then shpparterres.backcolor = &H F If RegSector6(1).Visible = True Then shpgespa.backcolor = &H8000& If RegSector6(1).Visible = False Then shpgespa.backcolor = &H F If Fuente1.Visible = True Then shpfont.backcolor = &HC0C000 If Fuente1.Visible = False Then shpfont.backcolor = &H F If LlumEntrada1.Visible = True Then shpentrada.backcolor = &H80FFFF If LlumEntrada1.Visible = False Then shpentrada.backcolor = &H F If LLum1.Visible = True Then shpjardi.backcolor = &H80FFFF If LLum1.Visible = False Then shpjardi.backcolor = &H F Annex 1-15

17 Private Sub Funcioactualitzarpantalla() If Detectorentrada = True Then shpdetectorentrada.backcolor = &HFF00& picentrada(2).backcolor = &HC00000 shpdetectorentrada.backcolor = &HFF& picentrada(2).backcolor = &H F If Detectorcarrer = True Then shpdetectorcarrer.backcolor = &HFF00& picentrada(3).backcolor = &HC00000 shpdetectorcarrer.backcolor = &HFF& picentrada(3).backcolor = &H F If Detectorgaratge = True Then shpdetectorgaratge.backcolor = &HFF00& picentrada(1).backcolor = &HC00000 shpdetectorgaratge.backcolor = &HFF& picentrada(1).backcolor = &H F If Humitatseto = True Then shphumitatseto.backcolor = &HFF00& picentrada(0).backcolor = &H8000& shphumitatseto.backcolor = &HFF& picentrada(0).backcolor = &H F If Detector1 = True Then shpmoviment.backcolor = &HFF00& picentrada(4).backcolor = &H0& picentrada(5).backcolor = &H0& picentrada(6).backcolor = &H0& Detector1 = False shpmoviment.backcolor = &HFF& picentrada(4).backcolor = &H F picentrada(5).backcolor = &H F picentrada(6).backcolor = &H F If Sensor1 = True Then shplluminositat.backcolor = &HFF00& picentrada(8).backcolor = &H80FFFF Sensor1 = False shplluminositat.backcolor = &HFF& picentrada(8).backcolor = &H F If Pararllumjardi = True Then shppararllumjardi.backcolor = &HFF00& shppararllumjardi.backcolor = &HFF& Annex 1-16

18 Private Sub cmddetectorcarrer_click() If Detectorcarrer = False Then Detectorcarrer = True Detectorcarrer = False Funcionllum Private Sub cmddetectorgaratge_click() If Detectorgaratge = False Then Detectorgaratge = True Detectorgaratge = False Funcionllum Private Sub cmdhumitatseto_click() If Humitatseto = False Then Humitatseto = True Humitatseto = False Private Sub cmddetectorentrada_click() If Detectorentrada = False Then Detectorentrada = True Detectorentrada = False Funcionllum Funcionllumjardi Funcionfuente Private Sub cmdmemoritzar_click() FuncionObrirfitxer FuncionEscriurefitxer (Programaactiu) Annex 1 Private Sub cmdmostrarentrades_click() 'Comandament que ens mostra la situació de les entrades en la realitat. If Mostrarentrades = False Then Mostrarentrades = True cmdmostrarentrades.caption = "No Mostrar Situació" picentrada(0).visible = True picentrada(1).visible = True picentrada(2).visible = True picentrada(3).visible = True picentrada(4).visible = True picentrada(5).visible = True picentrada(6).visible = True picentrada(7).visible = True picentrada(8).visible = True Annex 1-17

19 Mostrarentrades = False cmdmostrarentrades.caption = "Mostrar Situació" picentrada(0).visible = False picentrada(1).visible = False picentrada(2).visible = False picentrada(3).visible = False picentrada(4).visible = False picentrada(5).visible = False picentrada(6).visible = False picentrada(7).visible = False picentrada(8).visible = False Private Sub cmdsimulacio_click() If Simulacio = True Then MSComm1.PortOpen = True Simulacio = False cmdsimulacio.caption = "Simular" cmdhumitatseto.visible = False cmddetectorentrada.visible = False cmddetectorgaratge.visible = False cmddetectorcarrer.visible = False cmdsensor1.visible = False cmddetector1.visible = False cmdpararllumjardi.visible = False Frame6.Caption = "Estat de les entrades" MSComm1.PortOpen = False Simulacio = True cmdsimulacio.caption = "No Simular" cmdhumitatseto.visible = True cmddetectorentrada.visible = True cmddetectorgaratge.visible = True cmddetectorcarrer.visible = True cmdsensor1.visible = True cmddetector1.visible = True cmdpararllumjardi.visible = True Frame6.Caption = "Estat de la simulació" Detectorentrada = False Detectorcarrer = False Detectorgaratge = False Humitatseto = False Detector1 = False Sensor1 = False Pararllumjardi = False lblcomunicacio.visible = False Private Sub cmdvalidararbres_click() Flageditant = False cmdsortir.setfocus 'Els comandaments cmdvalidar... serveixen per a desactivar el Flageditant, i desviar el GetFocus cap a un altre punt per a confirmar els valors entrats. Annex 1-18

20 Private Sub cmdvalidargespa_click() Flageditant = False cmdsortir.setfocus Private Sub cmdvalidarhora_click() Flageditant = False cmdsortir.setfocus Private Sub cmdvalidarhoraaturada_click() Flageditant = False cmdsortir.setfocus Private Sub cmdvalidarparterres_click() Flageditant = False cmdsortir.setfocus Private Sub cmdvalidarseto_click() Flageditant = False cmdsortir.setfocus Private Sub cmdsensor1_click() 'Comandament per a l'activació / desactivació del sensor de lluminositat de manera manual. If (Sensor1 = False) Then Sensor1 = True cmdsensor1.caption = "Fosc" cmdsensor1.backcolor = &H cmdsensor1.tooltiptext = "Sensor de lluminositat. Estat Activat (Fosc)." Sensor1 = False cmdsensor1.caption = "Clar" cmdsensor1.backcolor = &H Marxallumentradaauto = False cmdsensor1.tooltiptext = "Sensor de lluminositat. Estat Desactivat (Clar)." If OptAuto = True And chkllumjardi = 1 Then Marxallumjardi = False Private Sub cmdllumentrada_click() 'Comandament per a l'activació / desactivació de l'illuminació (Entrada) de manera manual. If LlumEntrada = True Then Marxallumentrada = False Marxallumentrada = True Funcionllum Private Sub cmddetector1_click() If Detector1 = False Then Detector1 = True Detector1 = False Annex 1-19

21 Funcionllumjardi Funcionllum Public Sub cmdpararllumjardi_click() Funcionpararllumjardi Private Sub cmdpararllumjardi_mousedown(button As Integer, Shift As Integer, X As Single, Y As Single) Pararllumjardi = True Private Sub cmdpararllumjardi_mouseup(button As Integer, Shift As Integer, X As Single, Y As Single) Pararllumjardi = False Private Sub cmdparar_click() 'El comandament cmdparar serveix de parada general manual en qualsevols dels dos modes de funcionament Automàtic / Manual. Marxaseto = False Marxaparterres = False Marxaarbres = False Marxagespa = False Marxallumjardi = False Marxallumentrada = False Marxallumentradaauto = False Sector1 = False Sector11.Visible = False Sector12.Visible = False Sector13.Visible = False Sector14.Visible = False cmdsector1.caption = "Sector 1 (Setos) Arrancar" Sector2 = False Sector21.Visible = False Sector22.Visible = False cmdsector2.caption = "Sector 2 (Arbres) Arrancar" Sector3 = False Sector31.Visible = False Sector32.Visible = False Sector41.Visible = False Sector42.Visible = False Sector51.Visible = False Sector52.Visible = False cmdsector3.caption = "Sector 3 (Parterres) Arrancar" Sector6 = False For X = 0 To 28 RegSector6(X).Visible = False Next cmdsector6.caption = "Sector 6 (Gespa) Arrancar" Llum = False LLum1.Visible = False Llum2.Visible = False cmdllum.caption = "Illuminació (Jardí) Arrancar" LlumEntrada = False LlumEntrada1.Visible = False LlumEntrada2.Visible = False LlumEntrada3.Visible = False Annex 1-20

22 cmdllumentrada.caption = "Illuminació(Entrada) Arrancar" Marxafont = False Fuente = False Fuente1.Visible = False Fuente2.Visible = False Fuente3.Visible = False cmdfuente.caption = "Font Central Arrancar" tmrintermitencia1.enabled = False tmrintermitencia2.enabled = False tmrintermitencia3.enabled = False tmrintermitenciafuente.enabled = False OptMan = True Private Sub cmdsector1_click() 'Comandament per a l'activació / desactivació del Sector 1 (Setos) de manera manual, subdirigit a Funcionseto. If Sector1 = True Then Marxaseto = False Marxaseto = True Horamarxamanualseto = Int(Timer()) Funcionseto Private Sub mnuestiu_click() If mnuestiu.checked = False Then mnuestiu.checked = True mnuhivern.checked = False mnuprimavera.checked = False mnupersonalitzat.checked = False mnutardor.checked = False lblprogramaactual.caption = "Programa actual: Estiu" Programaactiu = 3 FuncionObrirfitxer FuncionLlegirfitxer (Programaactiu) cmdmemoritzar.enabled = True Private Sub mnuhivern_click() If mnuhivern.checked = False Then mnuhivern.checked = True mnuestiu.checked = False mnuprimavera.checked = False mnutardor.checked = False mnupersonalitzat.checked = False lblprogramaactual.caption = "Programa actual: Hivern" Programaactiu = 1 FuncionObrirfitxer FuncionLlegirfitxer (Programaactiu) cmdmemoritzar.enabled = True Annex 1-21

23 Private Sub mnupersonalitzat_click() If mnupersonalitzat.checked = False Then mnupersonalitzat.checked = True mnuestiu.checked = False mnuprimavera.checked = False mnutardor.checked = False mnuhivern.checked = False lblprogramaactual.caption = "Programa actual: Personalitzat" Programaactiu = 5 FuncionObrirfitxer FuncionLlegirfitxer (Programaactiu) cmdmemoritzar.enabled = True Private Sub mnuprimavera_click() If mnuprimavera.checked = False Then mnuprimavera.checked = True mnuestiu.checked = False mnuhivern.checked = False mnutardor.checked = False mnupersonalitzat.checked = False lblprogramaactual.caption = "Programa actual: Primavera" Programaactiu = 2 FuncionObrirfitxer FuncionLlegirfitxer (Programaactiu) cmdmemoritzar.enabled = True Private Sub mnutardor_click() If mnutardor.checked = False Then mnutardor.checked = True mnuestiu.checked = False mnuprimavera.checked = False mnuhivern.checked = False mnupersonalitzat.checked = False lblprogramaactual.caption = "Programa actual: Tardor" Programaactiu = 4 FuncionObrirfitxer FuncionLlegirfitxer (Programaactiu) cmdmemoritzar.enabled = True Private Sub OptAuto_Click() Marxallumentradaauto = False Private Sub tmrcomunicacio_timer() FalloComunicacio = True tmrcomunicacio = False Annex 1-22

24 Private Sub tmrintermitencia1_timer() 'Timer que permet el parpadeig.visible = True /.Visible = False quan el sector esta en funcionament. If Sector11.Visible = True Then Sector11.Visible = False Sector12.Visible = False Sector13.Visible = False Sector14.Visible = False Sector11.Visible = True Sector12.Visible = True Sector13.Visible = True Sector14.Visible = True Private Sub cmdsector2_click() 'Comandament per a l'activació / desactivació del Sector 2 (Arbres) de manera manual, subdirigit a Funcionarbres. If Sector2 = True Then Marxaarbres = False Marxaarbres = True Horamarxamanualarbres = Int(Timer()) Funcionarbres Private Sub tmrintermitencia2_timer() 'Timer que permet el parpadeig.visible = True /.Visible = False quan el sector esta en funcionament. If Sector21.Visible = True Then Sector21.Visible = False Sector22.Visible = False Sector21.Visible = True Sector22.Visible = True Private Sub cmdsector3_click() 'Comandament per a l'activació / desactivació del Sector 3 (Parterres) de manera manual, subdirigit a Funcionparterres. If Sector3 = True Then Marxaparterres = False Marxaparterres = True Horamarxamanualparterres = Int(Timer()) Funcionparterres Private Sub tmrintermitencia3_timer() 'Timer que permet el parpadeig.visible = True /.Visible = False quan el sector esta en funcionament. If Sector31.Visible = True Then Sector31.Visible = False Sector32.Visible = False Sector41.Visible = False Annex 1-23

25 Sector42.Visible = False Sector51.Visible = False Sector52.Visible = False Sector31.Visible = True Sector32.Visible = True Sector41.Visible = True Sector42.Visible = True Sector51.Visible = True Sector52.Visible = True Private Sub cmdsector6_click() 'Comandament per a l'activació / desactivació del Sector 6 (Gespa) de manera manual, subdirigit a Funciongespa. If Sector6 = True Then Marxagespa = False Marxagespa = True Horamarxamanualgespa = Int(Timer()) Funciongespa Private Sub tmrintermitencia6_timer() Dim X As Integer 'Timer que permet el parpadeig.bordercolor = &HC0C000 /.BorderColor = &HC0C000 quan el sector esta en funcionament. If RegSector6(1).BorderColor = &HC0C000 Then For X = 0 To 28 RegSector6(X).BorderColor = &HC00000 Next For X = 0 To 28 RegSector6(X).BorderColor = &HC0C000 Next Private Sub cmdllum_click() 'Comandament per a l'activació / desactivació de l'illuminació (Jardí) de manera manual. If Llum = True Then Marxallumjardi = False Marxallumjardi = True Funcionllum Private Sub cmdfuente_click() 'Comandament per a l'activació / parada de la font de manera manual, sudirigit a Funcionfuente. If Fuente = True Then Marxafont = False Marxafont = True Funcionfuente Annex 1-24

26 Private Sub tmrintermitenciafuente_timer() 'Timer que permet el parpadeig.visible = True /.Visible = False quan la font esta en funcionament. If Fuente1.Visible = False Then Fuente1.Visible = True Fuente2.Visible = True Fuente3.Visible = True Fuente1.Visible = False Fuente2.Visible = False Fuente3.Visible = False Private Sub cmdsortir_click() 'Comandament per a sortir del programana. End Private Sub tmrrellotge_timer() 'Timer amd Interval = 1000ms = 1s (Es la unitat minima amb la que es treballa al programa), que acciona les ordres demanades (les que depenen del temps). tmrrellotge.enabled = False If Simulacio = False Then Comunicacio lblrellotge = Time lbldata = Date FuncionDiasetmana Funcionfuente Funcionaturadageneral Funcionseto Funcionparterres Funcionarbres Funciongespa Funcionduradamanual Funcionduradaautomatica Funcionllum Funcionllumjardi If FalloComunicacio = False Then Funcionelementsactius Funcioactualitzarpantalla FalloComunicacio = False tmrrellotge.enabled = True Private Sub txtduradamanualseto_change() 'Es condiciona que les dades entrades a txtduradamanualseto siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 0. If (IsNumeric(txtDuradamanualseto) = True) Then If (txtduradamanualseto > 1440) Then txtduradamanualseto = 0 txtduradamanualseto = 0 Annex 1-25

27 Private Sub txtduradamanualarbres_change() 'Es condiciona que les dades entrades a txtduradamanualarbres siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 0. If (IsNumeric(txtDuradamanualarbres) = True) Then If (txtduradamanualarbres > 1440) Then txtduradamanualarbres = 0 txtduradamanualarbres = 0 Private Sub txtduradamanualparterres_change() 'Es condiciona que les dades entrades a txtduradamanualparterres siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 0. If (IsNumeric(txtDuradamanualparterres) = True) Then If (txtduradamanualparterres > 1440) Then txtduradamanualparterres = 0 txtduradamanualparterres = 0 Private Sub txtduradamanualgespa_change() 'Es condiciona que les dades entrades a txtduradamanualgespa siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 0. If (IsNumeric(txtDuradamanualgespa) = True) Then If (txtduradamanualgespa > 1440) Then txtduradamanualgespa = 0 txtduradamanualgespa = 0 Private Sub txthoramarxa_gotfocus() 'Quan s'estan modificant les dades de txthora/minut/segon marxa/aturada Flageditant = True per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidarhora Private Sub txtminutmarxa_gotfocus() Private Sub txtsegonmarxa_gotfocus() Private Sub txthoraaturada_gotfocus() Private Sub txtminutaturada_gotfocus() Annex 1-26

28 Private Sub txtsegonaturada_gotfocus() Private Sub txthoramarxa_validate(cancel As Boolean) 'Es condiciona q les dades entrades a txthora/minut/segon marxa/aturada estiguin entre els valors corresponents (0-23 per les hores i 0-59 per minuts i segons), en cas de que no hi estiguin sortirà un senyal d'avís. If (IsNumeric(txtHoramarxa) = True) Then If (txthoramarxa.text < 0) Or (txthoramarxa > 23) Then If Then MsgBox "Hora Marxa Font Incorrecta" Private Sub txtminutmarxa_validate(cancel As Boolean) If (IsNumeric(txtMinutmarxa) = True) Then If (txtminutmarxa.text < 0) Or (txtminutmarxa > 59) Then If Then MsgBox "Hora Marxa Font Incorrecta" Private Sub txtsegonmarxa_validate(cancel As Boolean) If (IsNumeric(txtSegonmarxa) = True) Then If (txtsegonmarxa.text < 0) Or (txtsegonmarxa > 59) Then If Then MsgBox "Hora Marxa Font Incorrecta" Private Sub txthoraaturada_validate(cancel As Boolean) If (IsNumeric(txtHoraaturada) = True) Then If (txthoraaturada.text < 0) Or (txthoraaturada > 23) Then If Then MsgBox "Hora Aturada Font Incorrecta" Private Sub txtminutaturada_validate(cancel As Boolean) If (IsNumeric(txtMinutaturada) = True) Then Annex 1-27

29 If (txtminutaturada.text < 0) Or (txtminutaturada > 59) Then If Then MsgBox "Hora Marxa Font Incorrecta" Private Sub txtsegonaturada_validate(cancel As Boolean) If (IsNumeric(txtSegonaturada) = True) Then If (txtsegonaturada.text < 0) Or (txtsegonaturada > 59) Then If Then MsgBox "Hora Aturada Font Incorrecta" Private Sub txthora1marxaseto_gotfocus() 'Quan s'estan modificant les dades de txthora/minut/segon marxaseto/aturadaseto per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidarseto Private Sub txtminut1marxaseto_gotfocus() Private Sub txtsegon1marxaseto_gotfocus() Private Sub txthora1aturadaseto_gotfocus() Private Sub txthora2marxaseto_gotfocus() Private Sub txtminut2marxaseto_gotfocus() Private Sub txtsegon2marxaseto_gotfocus() Private Sub txthora2aturadaseto_gotfocus() Private Sub txthora1marxaparterres_gotfocus() 'Quan s'estan modificant les dades de txthora/minut/segon marxaparterres/aturadaparterres per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidarparterres Private Sub txtminut1marxaparterres_gotfocus() Annex 1-28

30 Private Sub txtsegon1marxaparterres_gotfocus() Private Sub txthora1aturadaparterres_gotfocus() Private Sub txthora2marxaparterres_gotfocus() Private Sub txtminut2marxaparterres_gotfocus() Private Sub txtsegon2marxaparterres_gotfocus() Private Sub txthora2aturadaparterres_gotfocus() Private Sub txthora1marxaarbres_gotfocus() 'Quan s'estan modificant les dades de txthora/minut/segon marxaarbres/aturadaarbres per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidararbres. Private Sub txtminut1marxaarbres_gotfocus() Private Sub txtsegon1marxaarbres_gotfocus() Private Sub txthora1aturadaarbres_gotfocus() Private Sub txthora2marxaarbres_gotfocus() Private Sub txtminut2marxaarbres_gotfocus() Private Sub txtsegon2marxaarbres_gotfocus() Private Sub txthora2aturadaarbres_gotfocus() Private Sub txthora1marxagespa_gotfocus() Annex 1-29

31 'Quan s'estan modificant les dades de txthora/minut/segon marxagespa/aturadagespa per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidargespa. Private Sub txtminut1marxagespa_gotfocus() Private Sub txtsegon1marxagespa_gotfocus() Private Sub txthora1aturadagespa_gotfocus() Private Sub txthora2marxagespa_gotfocus() Private Sub txtminut2marxagespa_gotfocus() Private Sub txtsegon2marxagespa_gotfocus() Private Sub txthora2aturadagespa_gotfocus() Private Sub txthoraaturadageneral_gotfocus() 'Quan s'estan modificant les dades de txthora/minut/segonaturadageneral Flageditant = True per tal de no agafar valors no desitjats, fins que no s'hagi validat l'hora desde cmdvalidarhoraaturada Private Sub txtminutaturadageneral_gotfocus() Private Sub txtsegonaturadageneral_gotfocus() Private Sub txthora1marxaseto_validate(cancel As Boolean) 'Es condiciona q les dades entrades a txthora/minut/segon marxaseto/aturadaseto estiguin entre els valors corresponents (0-23 per les hores i 0-59 per minuts i segons), en cas de que no hi estiguin sortirà un senyal d'avís.(idem per arbres,parterres i gespa) If (IsNumeric(txtHora1marxaseto) = True) Then If (txthora1marxaseto.text < 0) Or (txthora1marxaseto > 23) Then If Then MsgBox "Hora Primera Marxa Seto Incorrecta" Private Sub txtminut1marxaseto_validate(cancel As Boolean) Annex 1-30

32 If (IsNumeric(txtMinut1marxaseto) = True) Then If (txtminut1marxaseto.text < 0) Or (txtminut1marxaseto > 59) Then If Then MsgBox "Minut Primera Marxa Seto Incorrecta" Private Sub txtsegon1marxaseto_validate(cancel As Boolean) If (IsNumeric(txtSegon1marxaseto) = True) Then If (txtsegon1marxaseto.text < 0) Or (txtsegon1marxaseto > 59) Then If Then MsgBox "Segon Primera Marxa Seto Incorrecta" Private Sub txthora1aturadaseto_change() 'Es condiciona que les dades entrades a txtduradamanualseto siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 1. If (IsNumeric(txtHora1aturadaseto) = True) Then If (txthora1aturadaseto > 1440) Or (txthora1aturadaseto < 1) Then txthora1aturadaseto = 1 txthora1aturadaseto = 1 Private Sub txthora2marxaseto_validate(cancel As Boolean) If (IsNumeric(txtHora2marxaseto) = True) Then If (txthora2marxaseto.text < 0) Or (txthora2marxaseto > 23) Then If Then MsgBox "Hora Segona Marxa Seto Incorrecta" Private Sub txtminut2marxaseto_validate(cancel As Boolean) If (IsNumeric(txtMinut2marxaseto) = True) Then If (txtminut2marxaseto.text < 0) Or (txtminut2marxaseto > 59) Then If Then Annex 1-31

33 MsgBox "Minut Segona Marxa Seto Incorrecta" Private Sub txtsegon2marxaseto_validate(cancel As Boolean) If (IsNumeric(txtSegon2marxaseto) = True) Then If (txtsegon2marxaseto.text < 0) Or (txtsegon2marxaseto > 59) Then If Then MsgBox "Segon Segona Marxa Seto Incorrecta" Private Sub txthora2aturadaseto_change() If (IsNumeric(txtHora2aturadaseto) = True) Then If (txthora2aturadaseto > 1440) Or (txthora2aturadaseto < 1) Then txthora2aturadaseto = 1 txthora2aturadaseto = 1 Private Sub txthora1marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtHora1marxaparterres) = True) Then If (txthora1marxaparterres.text < 0) Or (txthora1marxaparterres > 23) Then If Then MsgBox "Hora Primera Marxa Parterres Incorrecta" Private Sub txtminut1marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtMinut1marxaparterres) = True) Then If (txtminut1marxaparterres.text < 0) Or (txtminut1marxaparterres > 59) Then If Then MsgBox "Minut Primera Marxa Parterres Incorrecta" Private Sub txtsegon1marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtSegon1marxaparterres) = True) Then If (txtsegon1marxaparterres.text < 0) Or (txtsegon1marxaparterres > 59) Then Annex 1-32

34 If Then MsgBox "Segon Primera Marxa Parterres Incorrecta" Private Sub txthora1aturadaparterres_change() 'Es condiciona que les dades entrades a txthora1aturadaparterres siguin valors numèrics, en cas de que ho siguin, que siguin menors a 1440 (per no superar la durada d'un dia 1440*60=864000) i en cas de que siguin majors o no numerics, es subsitueix per el valor 1. If (IsNumeric(txtHora1aturadaparterres) = True) Then If (txthora1aturadaparterres > 1440) Or (txthora1aturadaparterres < 1) Then txthora1aturadaparterres = 1 txthora1aturadaparterres = 1 Private Sub txthora2marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtHora2marxaparterres) = True) Then If (txthora2marxaparterres.text < 0) Or (txthora2marxaparterres > 23) Then If Then MsgBox "Hora Segona Marxa Parterres Incorrecta" Private Sub txtminut2marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtMinut2marxaparterres) = True) Then If (txtminut2marxaparterres.text < 0) Or (txtminut2marxaparterres > 59) Then If Then MsgBox "Minut Segona Marxa Parterres Incorrecta" Private Sub txtsegon2marxaparterres_validate(cancel As Boolean) If (IsNumeric(txtSegon2marxaparterres) = True) Then If (txtsegon2marxaparterres.text < 0) Or (txtsegon2marxaparterres > 59) Then If Then MsgBox "Segon Segona Marxa Parterres Incorrecta" Private Sub txthora2aturadaparterres_change() If (IsNumeric(txtHora2aturadaparterres) = True) Then If (txthora2aturadaparterres > 1440) Or (txthora2aturadaparterres < 1) Then Annex 1-33

ANNEX. CODI FONT DE LES CLASSES DESENVOLUPADES

ANNEX. CODI FONT DE LES CLASSES DESENVOLUPADES ANNEX. CODI FONT DE LES CLASSES DESENVOLUPADES CLASSE FORMULARI

More information

Software Design User testing exercise

Software Design User testing exercise 102759 Software Design User testing exercise Joan Serrat December 12, 2017 1 Introduction Goal The purpose of this exercise is to learn what is and how to do a user or formative testing session by doing

More information

ASXI-M - Architecture and Security of Computer Networks

ASXI-M - Architecture and Security of Computer Networks Coordinating unit: 804 - CITM - Image Processing and Multimedia Technology Centre Teaching unit: 804 - CITM - Image Processing and Multimedia Technology Centre Academic year: Degree: 2018 BACHELOR'S DEGREE

More information

Annexes. Kpax Plataforma d'aprenentatge en Xarxa: Migració de kpaxserver a NodeJs amb MongoDB

Annexes. Kpax Plataforma d'aprenentatge en Xarxa: Migració de kpaxserver a NodeJs amb MongoDB Kpax Plataforma d'aprenentatge en Xarxa: Migració de kpaxserver a NodeJs amb MongoDB Annexes Miquel A. Muntaner Morey Administració web i comerç electrònic Màster en Programari Lliure Daniel Riera Terrén

More information

SUMARI 1 I. CLASSES DEL SUBPROGRAMA DE CÀLCUL 3. A. Classe CEstructura...3 B. Classe CElement...74 II. MÒDULS DEL SUBPROGRAMA DE CÀLCUL 127

SUMARI 1 I. CLASSES DEL SUBPROGRAMA DE CÀLCUL 3. A. Classe CEstructura...3 B. Classe CElement...74 II. MÒDULS DEL SUBPROGRAMA DE CÀLCUL 127 1 Sumari SUMARI 1 I. CLASSES DEL SUBPROGRAMA DE CÀLCUL 3 A. Classe CEstructura...3 B. Classe CElement...74 II. MÒDULS DEL SUBPROGRAMA DE CÀLCUL 127 A. Mòdul principal...127 3 I. Classes del subprograma

More information

OCTOBEAM. LED Lighting Effect USER MANUAL / MANUAL DE USUARIO

OCTOBEAM. LED Lighting Effect USER MANUAL / MANUAL DE USUARIO LED Lighting Effect USER MANUAL / MANUAL DE USUARIO PLEASE READ THE INSTRUCTIONS CAREFULLY BEFORE USE / POR FAVOR LEA LAS INSTRUCCIÓNES ANTES DE USAR 1. Overview OctoBeam White is a LED Lighting Bar with

More information

Technical Note #70. GE PMCS App Note 70 Page 1 of 9. Broadcast Time Syncronization Utility

Technical Note #70. GE PMCS App Note 70 Page 1 of 9. Broadcast Time Syncronization Utility GE PMCS App Note 70 Page 1 of 9 Technical Note #70 Broadcast Time Syncronization Utility Home Product Information Case Studies FAQs Download Area 'Virtual' Demo Glossary of Terms Links Contact Us Search

More information

Anexos. Diseño y construcción de un puente grúa automatizado de precisión

Anexos. Diseño y construcción de un puente grúa automatizado de precisión Anexos Diseño y construcción de un puente grúa automatizado de precisión Nombre: Daniel Andrade García Especialidad: Ingeniería Electrónica Industrial y Automática Tutor: Inmaculada Martínez Teixidor Cotutor:

More information

OPENFLOW 1.3 WITH RYU CONTROLLER

OPENFLOW 1.3 WITH RYU CONTROLLER OPENFLOW 1.3 WITH RYU CONTROLLER A Degree Thesis Submitted to the Faculty of the Escola Tècnica d'enginyeria de Telecomunicació de Barcelona Universitat Politècnica de Catalunya by CARLOS FERNÁNDEZ SÁNCHEZ

More information

DOC // MANUAL CALCULADORA HP 17BII EBOOK

DOC // MANUAL CALCULADORA HP 17BII EBOOK 31 March, 2018 DOC // MANUAL CALCULADORA HP 17BII EBOOK Document Filetype: PDF 388.57 KB 0 DOC // MANUAL CALCULADORA HP 17BII EBOOK Why should wait for some days to get or receive the manual calculadora

More information

Communication Protocols

Communication Protocols Protocols de comunicació Chapter 3 Communication Protocols 1 Comunicació Paral lel/sèrie Introduction: Parallel/Serial Communication 2 Necessitat de multiplexar In a system with binary codification 1 Physic

More information

TGA - Graphic Cards and Accelerators

TGA - Graphic Cards and Accelerators Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 701 - AC - Department of Computer Architecture Academic year: Degree: 2018 BACHELOR'S DEGREE IN INFORMATICS ENGINEERING (Syllabus

More information

Tutorial Como Hacer Jailbreak Iphone 3g 4.2 1

Tutorial Como Hacer Jailbreak Iphone 3g 4.2 1 Tutorial Como Hacer Jailbreak Iphone 3g 4.2 1 Untethered Como hacer jailbreak iphone 3g con snowbreeze. jailbreak slider themes I hacer jailbreak iphone 3g 4.2.1 con snowbreeze Apple News - ios 6 Untethered.

More information

3a, 4a i 5a Sessió. Estació de Test de Disc Durs

3a, 4a i 5a Sessió. Estació de Test de Disc Durs 3a, 4a i 5a Sessió. Estació de Test de Disc Durs Objectiu: Els objectius d aquestes sessions són desenvolupar el programari necessari en IRL per automatitzar una estació encarregada de realitzar el test

More information

Annotating Time Expressions in Catalan TimeML Annotation Guidelines

Annotating Time Expressions in Catalan TimeML Annotation Guidelines Annotating Time Expressions in Catalan TimeML Annotation Guidelines (Version TempEval-2010) Barcelona Media Technical Report BM 2010-03 Roser Saurí, James Pustejovsky Contents 1 Introduction 2 2 Time expressions

More information

X8 Maryland Avenue Line

X8 Maryland Avenue Line How to use this timetable Use the map to find the stops closest to where you will get on and off the bus. Select the schedule (Weekday, Saturday, Sunday) for when you will travel. Along the top of the

More information

Rapid Serial Visual Presentation for Relevance Feedback in Image Retrieval with EEG Signals.

Rapid Serial Visual Presentation for Relevance Feedback in Image Retrieval with EEG Signals. Rapid Serial Visual Presentation for Relevance Feedback in Image Retrieval with EEG Signals. A Degree's Thesis Submitted to the Faculty of the Escola Tècnica d'enginyeria de Telecomunicació de Barcelona

More information

Benning Road-H Street Limited Line

Benning Road-H Street Limited Line How to use this timetable Use the map to find the stops closest to where you will get on and off the bus. Select the schedule (Weekday, Saturday, Sunday) for when you will travel. Along the top of the

More information

...ic Programming\Mystery Escape\Mystery Escape\frmEscape.vb

...ic Programming\Mystery Escape\Mystery Escape\frmEscape.vb ...ic Programming\Mystery Escape\Mystery Escape\frmEscape.vb 1 1 Option Strict On 2 3 Public Class frmescape 4 5 ' Class variables. 6 7 Private _intonehour As Integer = 1 8 Private _inttwohour As Integer

More information

Sébastien Mathier wwwexcel-pratiquecom/en Variables : Variables make it possible to store all sorts of information Here's the first example : 'Display the value of the variable in a dialog box 'Declaring

More information

SMART%HOME%LOW%COST%AUTOMATION%

SMART%HOME%LOW%COST%AUTOMATION% TREBALLFIDEGRAU GrauenEnginyeriaElectrònicaIndustrialiAutomàtica SMARTHOMELOWCOSTAUTOMATION VolumeICTechnicalReport Authors: JanSantaló JoelSerantes Director: ManuelManzanares Call: May2017 Smart&Home&Low&Cost&Automation&

More information

Manual De Adobe Photoshop Cs3 En Espanol File Type

Manual De Adobe Photoshop Cs3 En Espanol File Type We have made it easy for you to find a PDF Ebooks without any digging. And by having access to our ebooks online or by storing it on your computer, you have convenient answers with manual de adobe photoshop

More information

Las 20 Definiciones más comunes en el e-marketing

Las 20 Definiciones más comunes en el e-marketing Las 20 Definiciones más comunes en el e-marketing 1. CTR Click-Through Rate Click-through Rate identifies the percentage of people who click on link. Usually placed in an email, an ad, website page etc.

More information

CSharp. Microsoft. UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk

CSharp. Microsoft. UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk Microsoft 70-551-CSharp UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk Download Full Version : http://killexams.com/pass4sure/exam-detail/70-551-csharp Answer: A,C QUESTION: 78 You create

More information

MASTER THESIS. TITLE: Eye detection and face recognition in watch-list applications

MASTER THESIS. TITLE: Eye detection and face recognition in watch-list applications MASTER THESIS TITLE: Eye detection and face recognition in watch-list applications MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHOR: Alejandro Ariza Bueno DIRECTORS:

More information

Agenda: Estado Actual 2012

Agenda: Estado Actual 2012 Agenda: Estado Actual 2012 Mega Launch Updates Vision of BRS & EMC 1 La presiones de IT siguen siendo las misma Compliance & Regulaciones Cambios en Infractructura Presupuestos Crecimiento de Datos 2 CONVERGENCIA

More information

Create Extensions App inventor 2 Build Extensions App Inventor, easy tutorial - Juan Antonio Villalpando

Create Extensions App inventor 2 Build Extensions App Inventor, easy tutorial - Juan Antonio Villalpando 1 von 11 09.01.2019, 10:12 Inicio FOROS Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino AutoIt (Programación) Visual Basic

More information

SPECTRUM DEFRAGMENTATION IN ELASTIC OPTICAL NETWORKS

SPECTRUM DEFRAGMENTATION IN ELASTIC OPTICAL NETWORKS SPECTRUM DEFRAGMENTATION IN ELASTIC OPTICAL NETWORKS A Degree Thesis Submitted to the Faculty of the Escola Tècnica d'enginyeria de Telecomunicació de Barcelona Universitat Politècnica de Catalunya by

More information

% & (! *+)? ) /! %*) &

% & (! *+)? ) /! %*) & # emerge pgadmin3 [postgres@palocortado]$ postmaster -D /var/lib/postgresql/data -d 2 -p 5432 prewikka2pgadminsql.sh awk -f /var/lib/postgresql/prewikka-sql/prewikka2pgadminsql.awk /var/lib/postgresql/data/pg_log/postgre*.log

More information

ReportSourceDefinition describes generic properties of the data source

ReportSourceDefinition describes generic properties of the data source REPORTSOURCEDEFINITION.XML Describes a data source ReportSourceDefinition describes generic properties of the data source Id: Unique identifier. Is used to reference a RSD from the RD. Example: RSD_DISTRIBUTION_SALARY_CUBE.

More information

Programming with visual Basic:

Programming with visual Basic: Programming with visual Basic: 1-Introdution to Visual Basics 2-Forms and Control tools. 3-Project explorer, properties and events. 4-make project, save it and its applications. 5- Files projects and exercises.

More information

MASTER THESIS. TITLE: Color Based Image Classification and Description. MASTER DEGREE: Master in Science in Telecommunication Engineering & Management

MASTER THESIS. TITLE: Color Based Image Classification and Description. MASTER DEGREE: Master in Science in Telecommunication Engineering & Management MASTER THESIS TITLE: Color Based Image Classification and Description MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHOR: Sergi Laencina Verdaguer DIRECTOR: Francesc

More information

Shape Representation and Registration using Implicit Functions

Shape Representation and Registration using Implicit Functions Shape Representation and Registration using Implicit Functions A dissertation submitted by Mohammad Rouhani at Universitat Autònoma de Barcelona to fulfil the degree of Doctor en Informática. Bellaterra,

More information

Propedéutico de Programación

Propedéutico de Programación Propedéutico de Programación Coordinación de Ciencias Computacionales Semana 4, Segunda Parte Dra. Pilar Gómez Gil Versión 1. 24.06.08 http://ccc.inaoep.mx/~pgomez/cursos/programacion/ Chapter 3 ADT Unsorted

More information

DM6. User Guide English ( 3 10 ) Guía del usuario Español ( ) Appendix English ( 13 ) DRUM MODULE

DM6. User Guide English ( 3 10 ) Guía del usuario Español ( ) Appendix English ( 13 ) DRUM MODULE DM6 DRUM MODULE User Guide English ( 3 10 ) Guía del usuario Español ( 11 12 ) Appendix English ( 13 ) 2 User Guide (English) Support For the latest information about this product (system requirements,

More information

PhD THESIS OPTIMIZATION OF INVERSE REFLECTOR DESIGN

PhD THESIS OPTIMIZATION OF INVERSE REFLECTOR DESIGN PhD THESIS OPTIMIZATION OF INVERSE REFLECTOR DESIGN Albert Mas Baixeras 2010 PROGRAMA DE DOCTORAT EN TECNOLOGIA Advisors: Ignacio Martín Campos Gustavo Patow Memòria presentada per optar al títol de doctor

More information

Telecomunicacions en l àmbit de la Indústria 4.0

Telecomunicacions en l àmbit de la Indústria 4.0 Telecomunicacions en l àmbit de la Indústria 4.0 Dr. Pere Tuset-Peiró peretuset@uoc.edu IoT Solutions World Congress 18 d Octubre de 2018 De la màquina de vapor als sistemas ciber-físics Què és un sistma

More information

Código de programación:

Código de programación: Código de programación: #include #fuses XTPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VR E GEN #use delay(clock=4000000) #define USB_HID_DEVICE FALSE //deshabilitamos el uso

More information

Sesión 2: PL 1b: Gestión de sistemas en tiempo real para prototipado rápido de controladores (MathWorks).

Sesión 2: PL 1b: Gestión de sistemas en tiempo real para prototipado rápido de controladores (MathWorks). Sesión 2: PL 1b: Gestión de sistemas en tiempo real para prototipado rápido de controladores (MathWorks). 1 Objetivo... 3 Hardware description... 3 Software Setup... 3 Setting an Initial Working Folder...

More information

DATABASE AUTOMATION USING VBA (ADVANCED MICROSOFT ACCESS, X405.6)

DATABASE AUTOMATION USING VBA (ADVANCED MICROSOFT ACCESS, X405.6) Technology & Information Management Instructor: Michael Kremer, Ph.D. Database Program: Microsoft Access Series DATABASE AUTOMATION USING VBA (ADVANCED MICROSOFT ACCESS, X405.6) AGENDA 3. Executing VBA

More information

Garantía y Seguridad en Sistemas y Redes

Garantía y Seguridad en Sistemas y Redes Garantía y Seguridad en Sistemas y Redes Tema 3 User Authen0ca0on Esteban Stafford Departamento de Ingeniería Informá2ca y Electrónica Este tema se publica bajo Licencia: Crea2ve Commons BY- NC- SA 40

More information

Contents Introduction Getting Started Visual Basic Form Configuration Entering the VB Code

Contents Introduction Getting Started Visual Basic Form Configuration Entering the VB Code Your comments and suggestions on the operation of this software are welcome. Please address them to: ICONICS 100 Foxborough Blvd. Foxborough, MA 02035 Tel: 508-543-8600 Fax: 508-543-1503 E-mail: support@iconics.com

More information

Excel VBA Variables, Data Types & Constant

Excel VBA Variables, Data Types & Constant Excel VBA Variables, Data Types & Constant Variables are used in almost all computer program and VBA is no different. It's a good practice to declare a variable at the beginning of the procedure. It is

More information

TeamBuilder: Android Enquiry Application for creating project teams.

TeamBuilder: Android Enquiry Application for creating project teams. TFG EN ENGINYERIA INFORMÀTICA, ESCOLA D ENGINYERIA (EE), UNIVERSITAT AUTÒNOMA DE BARCELONA (UAB) 1 TeamBuilder: Android Enquiry Application for creating project teams. Mandela Oyeleke Resum En l'última

More information

Tutorial Para Jailbreak Iphone 3g Redsn0w Untethered Windows

Tutorial Para Jailbreak Iphone 3g Redsn0w Untethered Windows Tutorial Para Jailbreak 4.2 1 Iphone 3g Redsn0w Untethered Windows O aguardado jailbreak untethered para o ios finalmente saiu. free iphone 5 themes no Hello and today I ll be showing you a quick tutorial

More information

Overview About KBasic

Overview About KBasic Overview About KBasic The following chapter has been used from Wikipedia entry about BASIC and is licensed under the GNU Free Documentation License. Table of Contents Object-Oriented...2 Event-Driven...2

More information

5 When a program calls a function, in which type of data structure is memory allocated for the variables in that function?

5 When a program calls a function, in which type of data structure is memory allocated for the variables in that function? 1 The finally block of an exception handler is: -executed when an exception is thrown -always executed when the code leaves any part of the Try statement -always executed -always executed when the code

More information

Discrete Automation and Motion Drives y PLC Plataforma de automatización escalable AC500 Ethernet UDP

Discrete Automation and Motion Drives y PLC Plataforma de automatización escalable AC500 Ethernet UDP Discrete Automation and Motion Drives y PLC Plataforma de automatización escalable AC500 Ethernet UDP Version 2.0 (2009-02) Technical Guides A continuación UDP Intercambio de datos UDP Intercambio de datos

More information

Tutorial 3 Q&A. En la pregunta 7 de la sección 2.2 el cual dice: 7. Prove the domination laws in Table 1 by showing that: a)a U = U b)a =

Tutorial 3 Q&A. En la pregunta 7 de la sección 2.2 el cual dice: 7. Prove the domination laws in Table 1 by showing that: a)a U = U b)a = Tutorial 3 Q&A Question 1: 1) Can the range be considered a subset of a function's codomain? No, not always. There are cases that it is like that, but there are many that not. 2) Why is it that if the

More information

1. Apéndice E: Comunicación Electrónica con Parallel Graphics

1. Apéndice E: Comunicación Electrónica con Parallel Graphics 1. Apéndice E: Comunicación Electrónica con Parallel Graphics En este apéndice se presentan las comunicaciones electrónicas que se entablaron con el personal de soporte técnico de la compañía Parallel

More information

User Manual JPEGDICOM 2.5.0

User Manual JPEGDICOM 2.5.0 JPEG2DICOM 2.5.0. _en Page 1 of 11 20/08/2015 JPEGDICOM 2.5.0 Developed by: CharruaSoft http://www.charruasoft.com JPEG2DICOM 2.5.0. _en Page 2 of 11 20/08/2015 1. Introduction JPEG2DICOM it s an application

More information

INTOSAI EXPERTS DATABASE

INTOSAI EXPERTS DATABASE INTOSAI EXPERTS DATABASE User s Manual Version 1.0 Profile: Registrator MU.0001.INTOSAI USER S MANUAL REGISTRATOR PROFILE Experts Database System Author: Daniel Balvis Creation date: May 12th 2015 Last

More information

Function: function procedures and sub procedures share the same characteristics, with

Function: function procedures and sub procedures share the same characteristics, with Function: function procedures and sub procedures share the same characteristics, with one important difference- function procedures return a value (e.g., give a value back) to the caller, whereas sub procedures

More information

Forma't a l'escola del Gremi d'instal ladors de Barcelona

Forma't a l'escola del Gremi d'instal ladors de Barcelona CURSO DE MEMORIAS TÉCNICAS DE DISEÑO Código: MN36 Objetivo : En este curso, se pretende conseguir que el alumno, sepa elaborar en toda su amplitud, el diseño de una instalación eléctrica desde el punto

More information

TREBALL DE FI DE CARRERA

TREBALL DE FI DE CARRERA TREBALL DE FI DE CARRERA TÍTOL DEL TFC: Study, design and implementation of the HD-SDI stream reconstruction module for the UltraGrid platform TITULACIÓ: Enginyeria Tècnica de Telecomunicació, especialitat

More information

MASTER THESIS. TITLE: Vuforia v1.5 SDK: Analysis and evaluation of capabilities

MASTER THESIS. TITLE: Vuforia v1.5 SDK: Analysis and evaluation of capabilities MASTER THESIS TITLE: Vuforia v1.5 SDK: Analysis and evaluation of capabilities MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHORS: Alexandro Simonetti Ibañez Josep Paredes

More information

Basic operators, Arithmetic, Relational, Bitwise, Logical, Assignment, Conditional operators. JAVA Standard Edition

Basic operators, Arithmetic, Relational, Bitwise, Logical, Assignment, Conditional operators. JAVA Standard Edition Basic operators, Arithmetic, Relational, Bitwise, Logical, Assignment, Conditional operators JAVA Standard Edition Java - Basic Operators Java provides a rich set of operators to manipulate variables.

More information

C-DIAS Temperature sensing module CAI x temp. inputs C 8 x digital outputs +24V

C-DIAS Temperature sensing module CAI x temp. inputs C 8 x digital outputs +24V C-DIAS Temperature sensing module CAI 887 8 x temp. inputs 0 600 C 8 x digital outputs +24V This analogue input module is used for the detection of temperatures in the range of 0 600 C by means of a NiCrNi

More information

BASIC SERIAL COMMAND FUNCTIONAL SPECIFICATIONS PLV-WF20

BASIC SERIAL COMMAND FUNCTIONAL SPECIFICATIONS PLV-WF20 BASIC SERIAL FUNCTIONAL SPECIFICATIONS PLV-WF20 Ver.1.00 SANYO Electric Co., Ltd Personal Mobile Group DI Company Projector Business Division Contents 1 Overview...4 2 Serial Interface Specification...4

More information

BASIC SERIAL COMMAND FUNCTIONAL SPECIFICATIONS PLC-XF47. SANYO Electric Co., Ltd Personal Mobile Group DI Company Projector Business Division

BASIC SERIAL COMMAND FUNCTIONAL SPECIFICATIONS PLC-XF47. SANYO Electric Co., Ltd Personal Mobile Group DI Company Projector Business Division BASIC SERIAL FUNCTIONAL SPECIFICATIONS PLC-XF47 SANYO Electric Co., Ltd Personal Mobile Group DI Company Projector Business Division Contents 1 Overview...4 2 Serial Interface Specification...4 2.1 Transfer

More information

4- PHP introduc.on. Course: Developing web- based applica.ons. Cris*na Puente, Rafael Palacios

4- PHP introduc.on. Course: Developing web- based applica.ons. Cris*na Puente, Rafael Palacios 4- PHP introduc.on Course: Cris*na Puente, Rafael Palacios 2010- 1 PHP Overview What is PHP? A server- side scrip*ng language It is compa*ble with almost all browsers and servers used today It is free

More information

Informatics Ingeniería en Electrónica y Automática Industrial

Informatics Ingeniería en Electrónica y Automática Industrial Informatics Ingeniería en Electrónica y Automática Industrial Operators and expressions in C Operators and expressions in C Numerical expressions and operators Arithmetical operators Relational and logical

More information

EPUB - JAVA SCRIPT MANUAL EBOOK

EPUB - JAVA SCRIPT MANUAL EBOOK 06 March, 2018 EPUB - JAVA SCRIPT MANUAL EBOOK Document Filetype: PDF 141.5 KB 0 EPUB - JAVA SCRIPT MANUAL EBOOK For the manual part I have two buttons: next and previous that allows me to see the photos.

More information

( ) 1.,, Visual Basic,

( ) 1.,, Visual Basic, ( ) 1. Visual Basic 1 : ( 2012/2013) :. - : 4 : 12-14 10-12 2 http://www.institutzamatematika.com/index.ph p/kompjuterski_praktikum_2 3 2 / ( ) 4 90% 90% 10% 90%! 5 ? 6 "? : 7 # $? - ( 1= on 0= off ) -

More information

C:\MasterPageWeb\HAPR\docu\HAPR_VB6_version15sept06.rtf 19/10/08. HARP_VB projet en VB6

C:\MasterPageWeb\HAPR\docu\HAPR_VB6_version15sept06.rtf 19/10/08. HARP_VB projet en VB6 HARP_VB projet en VB6 Option Explicit Dim Value As Integer Dim i As Integer Dim il As Long Dim LL, L1S, L250µS, L500µS, L1mS, L2mS, L5mS, L10mS As Single Dim offsetdepart As Long Dim police(256, 8) As

More information

One Port Router. Installation Guide. It s about Quality of life

One Port Router. Installation Guide. It s about Quality of life One Port Router Installation Guide It s about Quality of life 2 This guide details the start up process for your internet connection. You will be able to enjoy the service in an easy, simple, and quick

More information

OPTIS Labs Tutorials 2013

OPTIS Labs Tutorials 2013 OPTIS Labs Tutorials 2013 Table of Contents Virtual Human Vision Lab... 4 Doing Legibility and Visibility Analysis... 4 Automation... 13 Using Automation... 13 Creation of a VB script... 13 Creation of

More information

Compilation TP 0.0 : The target architecture: Digmips

Compilation TP 0.0 : The target architecture: Digmips Compilation TP 0.0 : The target architecture: Digmips C. Alias & G. Iooss The goal of these TPs is to construct a C compiler for Digmips, a small MIPS processor implemented using the Diglog logic simulation

More information

xv6 Boot Recap: Transitioning from 16 bit mode to 32 bit mode

xv6 Boot Recap: Transitioning from 16 bit mode to 32 bit mode 238P Operating Systems, Fall 2018 xv6 Boot Recap: Transitioning from 16 bit mode to 32 bit mode 3 November 2018 Aftab Hussain University of California, Irvine BIOS xv6 Boot loader what it does Sets up

More information

UWP 3.0 Tool Download

UWP 3.0 Tool Download UWP 3.0 Tool Download 2019-02-28 Instructions History Download the UWP 3.0 Tool from this link: We always suggest to upgrade your system to the latest software release Scarica UWP 3.0 Tool da questo link:

More information

The magazine that is synonymous with building and creation.

The magazine that is synonymous with building and creation. MEDIA KIT PERSPECTIVA 2018 Qué sectores inmobiliarios tienen potencial en un año electoral The magazine that is synonymous with building and creation. EL DISEÑO ROBOTIZADO ENEMIGO O ALIADO? La digitalización

More information

//// exception modbus_write_file_record(address,byte_count,*request) ////

//// exception modbus_write_file_record(address,byte_count,*request) //// ////////////////////////////////////////////////////////////////////////////////////////// //// modbus.c //// //// MODBUS protocol driver for serial communications. //// //// Refer to documentation at

More information

Como Hacer Jailbreak A Ipad 2 Ios Ipod Touch 3g

Como Hacer Jailbreak A Ipad 2 Ios Ipod Touch 3g Como Hacer Jailbreak A Ipad 2 Ios 5.1 1 Ipod Touch 3g T Programas: Descarga ios: Como hacer jailbreak ios Nuevo jailbreak (Cydia) ios iphone/ipod touch/ipad, Pour les iphone 3G oui la 4.0 ( ainsi que la

More information

FORMAS DE IMPLEMENTAR LOS OYENTES. A).- El oyente en una clase independiente con el constructor con un argumento y usando el método getactioncommand.

FORMAS DE IMPLEMENTAR LOS OYENTES. A).- El oyente en una clase independiente con el constructor con un argumento y usando el método getactioncommand. FORMAS DE IMPLEMENTAR LOS OYENTES A).- El oyente en una clase independiente con el constructor con un argumento y usando el método getactioncommand. public class VentanaOyente extends Frame{ private Oyente

More information

Operating Instructions

Operating Instructions Operating Instructions For Digital Camera PC Connection QuickTime and the QuickTime logo are trademarks or registered trademarks of Apple Computer, Inc., used under license. PC Connection for Sharing and

More information

Chamilo LMS - Feature #6015 Improve procedure to add new friends in the social network

Chamilo LMS - Feature #6015 Improve procedure to add new friends in the social network Chamilo LMS - Feature #6015 Improve procedure to add new friends in the social network 07/03/2013 12:46 - Noa Orizales Iglesias Status: Feature implemented Start date: 07/03/2013 Priority: Normal Due date:

More information

Sébastien Mathier wwwexcel-pratiquecom/en While : Loops make it possible to repeat instructions a number of times, which can save a lot of time The following code puts sequential numbers into each of the

More information

Manual Ios 6 10a403 Iphone 4s >>>CLICK HERE<<<

Manual Ios 6 10a403 Iphone 4s >>>CLICK HERE<<< Manual Ios 6 10a403 Iphone 4s isn't very simple, so I highly recommend to read the official written guide before start! iphone 4 (GSM 3,1) ios 6.0 10A403 GeekGrade_IPSW Boot_IPSW With the release of ios

More information

Mac Os Sierra Al 100 Guida Completa Al Nuovo Sistema Operativo Di Apple

Mac Os Sierra Al 100 Guida Completa Al Nuovo Sistema Operativo Di Apple Mac Os Sierra Al 100 Guida Completa Al Nuovo Sistema Operativo Di Apple We have made it easy for you to find a PDF Ebooks without any digging. And by having access to our ebooks online or by storing it

More information

Revision for Final Examination (Second Semester) Grade 9

Revision for Final Examination (Second Semester) Grade 9 Revision for Final Examination (Second Semester) Grade 9 Name: Date: Part 1: Answer the questions given below based on your knowledge about Visual Basic 2008: Question 1 What is the benefit of using Visual

More information

EDITRAN/XAdES. Installation Manual. XAdES Signing and verification. z/os

EDITRAN/XAdES. Installation Manual. XAdES Signing and verification. z/os EDITRAN/XAdES XAdES Signing and verification z/os Installation Manual INDRA April 2018 EDITRAN/XAdES z/os. Installation Manual CONTENTS 1. INTRODUCTION... 1-1 2. INSTALLATION AND REQUIREMENTS... 2-1 2.1.

More information

Lab Sheet 4.doc. Visual Basic. Lab Sheet 4: Non Object-Oriented Programming Practice

Lab Sheet 4.doc. Visual Basic. Lab Sheet 4: Non Object-Oriented Programming Practice Visual Basic Lab Sheet 4: Non Object-Oriented Programming Practice This lab sheet builds on the basic programming you have done so far, bringing elements of file handling, data structuring and information

More information

PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS TEMA8: Excepciones y Entrada/Salida Manel Guerrero Tipos de Excepciones Checked Exception: The classes that extend Throwable class except RuntimeException and Error are

More information

Universitat Autònoma de Barcelona. Missing Data Matrix Factorization Addressing the Structure from Motion Problem

Universitat Autònoma de Barcelona. Missing Data Matrix Factorization Addressing the Structure from Motion Problem Universitat Autònoma de Barcelona Missing Data Matri Factorization Addressing the Structure from Motion Problem A dissertation submitted by Ma Carme Julià Ferré at Universitat Autònoma de Barcelona to

More information

Unit 6 - Software Design and Development LESSON 4 DATA TYPES

Unit 6 - Software Design and Development LESSON 4 DATA TYPES Unit 6 - Software Design and Development LESSON 4 DATA TYPES Previously Paradigms Choice of languages Key features of programming languages sequence; selection eg case, if then else; iteration eg repeat

More information

Operating Instructions

Operating Instructions Operating Instructions For Digital Camera PC Connection QuickTime and the QuickTime logo are trademarks or registered trademarks of Apple Computer, Inc., used under license therefrom. PC Connection for

More information

CSE443 Compilers. Dr. Carl Alphonce 343 Davis Hall

CSE443 Compilers. Dr. Carl Alphonce 343 Davis Hall CSE443 Compilers Dr. Carl Alphonce alphonce@buffalo.edu 343 Davis Hall www.cse.buffalo. edu/faculty/alphonce/sp18/cse443 piazza.com/buffalo/spring2018/cse443 BUILD A COMPILER! Assessment plan Homework

More information

GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4

GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4 GUJARAT TECHNOLOGICAL UNIVERSITY DIPLOMA IN INFORMATION TECHNOLOGY Semester: 4 Subject Name VISUAL BASIC Sr.No Course content 1. 1. Introduction to Visual Basic 1.1. Programming Languages 1.1.1. Procedural,

More information

Learning VB.Net. Tutorial 19 Classes and Inheritance

Learning VB.Net. Tutorial 19 Classes and Inheritance Learning VB.Net Tutorial 19 Classes and Inheritance Hello everyone welcome to vb.net tutorials. These are going to be very basic tutorials about using the language to create simple applications, hope you

More information

b) Use one of your methods to calculate the area of figure c.

b) Use one of your methods to calculate the area of figure c. Task 9: 1. Look at the polygons below. a) Describe at least three different methods for calculating the areas of these polygons. While each method does not necessarily have to work for all three figures,

More information

FUNDAMENTOS DEL DISEÑO DE

FUNDAMENTOS DEL DISEÑO DE Maestría en Electrónica Arquitectura de Computadoras Unidad 1 FUNDAMENTOS DEL DISEÑO DE COMPUTADORAS M. C. Felipe Santiago Espinosa Marzo/2017 1.1 Terminology Architecture & Organization 1 Architecture

More information

A framework for vulnerability reduction: A CARICOM prospective

A framework for vulnerability reduction: A CARICOM prospective Sistema Económico Latinoamericano y del Caribe Latin American and Caribbean Economic System Sistema Econômico Latino-Americano e do Caribe Système Economique Latinoaméricain et Caribéen A framework for

More information

MEJORES PRACTICAS EN CIBERSEGURIDAD

MEJORES PRACTICAS EN CIBERSEGURIDAD MEJORES PRACTICAS EN CIBERSEGURIDAD Roberto Hernández Rojas Valderrama, CISA, CISM, CGEIT, CRISC, ITIL Foundation ISO 27001 LA, PMP, CFSP Presidente ISACA Capítulo Ciudad de México OBJETIVO Revisar el

More information

Wall. Publications in my wall. Portfolios

Wall. Publications in my wall. Portfolios Content What about VisualEconomy? Register Start session Notifications and pending friendship requests User profiles Latest events Profile creation and update Change profile image Change access data Friends

More information

Le L c e t c ur u e e 2 To T p o i p c i s c t o o b e b e co c v o e v r e ed e Variables Operators

Le L c e t c ur u e e 2 To T p o i p c i s c t o o b e b e co c v o e v r e ed e Variables Operators Course Name: Advanced Java Lecture 2 Topics to be covered Variables Operators Variables -Introduction A variables can be considered as a name given to the location in memory where values are stored. One

More information

EPUB - CANON ZR70MC MINI DV MANUAL DOWNLOAD

EPUB - CANON ZR70MC MINI DV MANUAL DOWNLOAD 05 May, 2018 EPUB - CANON ZR70MC MINI DV MANUAL DOWNLOAD Document Filetype: PDF 342.4 KB 0 EPUB - CANON ZR70MC MINI DV MANUAL DOWNLOAD Canon Mini DV Digital Video Camcorder NTSC ZR70MC Cameras & Photo,

More information

DISTRIBUTED SHARED MEMORY SUPPORT in GMAC

DISTRIBUTED SHARED MEMORY SUPPORT in GMAC Universitat Politècnica de Catalunya DISTRIBUTED SHARED MEMORY SUPPORT in GMAC Bachelor s Thesis Author: Khalid Mahyou Supervisor: Javier Cabezas Barcelona Supercomputing center Co-Supervisor: Agustín

More information

Contents. Introduction 1. 1 Overview communication interface Communication protocol 2. 2 Communication specifications 2

Contents. Introduction 1. 1 Overview communication interface Communication protocol 2. 2 Communication specifications 2 Contents Introduction 1 1 Overview 2 1.1 485 communication interface 2 1.2 Communication procol 2 2 Communication specifications 2 3 Confirmation and setting method of communication specification 3 4 Connection

More information

OpenOffice.org 3.2 BASIC Guide

OpenOffice.org 3.2 BASIC Guide OpenOffice.org 3.2 BASIC Guide Copyright The contents of this document are subject to the Public Documentation License. You may only use this document if you comply with the terms of the license. See:

More information

Ver Install Guide. Ver. 4.3 Install Guide

Ver Install Guide. Ver. 4.3 Install Guide En Ver. 4.3 Install Guide Ver. 4.3 Install Guide En Table of Contents Introduction: About This Manual...1 Overview...2 Windows...3 Installing Nikon Capture 4 Under Windows...4 Easy Install...7 Custom Install...14

More information