Temporizacion bucles

Hola a todos,
Escribo este post porque tengo una duda con respecto a la temporización en bucles en LabView. Os comento mi problema, yo quiero contar el tiempo transcurrido en un instante determinado de mi programa, y lo hago hasta ahora mediante un TimeLoop. El problema es que no sé inicializar el tiempo que cuento en ese TimeLoop, de manera que cuando inicializo la aplicación (sin cerrarla) continúa el tiempo en el valor que se había detenido previamente, pero no se inicializa a '0'.
¿Cómo puedo volver a inicializar el valor del bucle cada vez que reinicio la aplicación sin cerrarla? Es evidente que si la cierro la bucle se inicializa, pero esa no es la circunstancia problemática.
Espero haberme explicado de manera adecuada y que alguien me pueda echar una mano en la medida de lo posible. Es una aplicación algo urgente y requiero solucionar este tema lo antes posible. Llevo varios días intentando encontrar la solución pero no sé que opción del TimeLoop (si es que existe) debo tocar para que el tiempo se inicialice.
Un saludo a todos y gracias de antemano.

Hola Jorge81, como temporizaste el código ahora, es un poco más preciso pero aun así tiene un par de técnicas de programación que no son ideales en LabVIEW.
Las variables locales en general solo se deben de utilizar para actualizar controles, no indicadores, el método ideal para actualizar un indicador es con el valor del cable. Ahora en el caso de lo que colocaste aquí no se puede porque estas usando una flat sequence.
Las Flat sequence son estructuras buenas para forzar flujo de datos, y cuando programas en FGPA son mas comunes. Sin embargo no deben de ser el principal mecanismo para forzar secuencias. Dentro de sus principales problemas es que te obliga a usar mas variables, no es escalable (es decir si quieres agregar estados adicionales) y también no puedes cambiar la secuencia en forma dinámica lo cual obliga a escribir mas código.
El tercer problema de usar el wait de 10 segundos es que si eso está dentro de un loop, ese loop va a dejar de responder por 10 segundos hasta que el tiempo termine. Es decir si hay un paro de emergencia o necesitas hacer algo mas mientras esperas, no va a responder hasta después de 10 segundos, es mas en este caso la velocidad máxima de este ciclo seria de 13 segundos.
Aquí te agrego un ejemplo sencillo con una maquina de estados que prende un LED por tres segundos , lo apaga y por 10 y después lo vuelve a prender.
Algunas cosas importantes son que el tiempo del ciclo lo da el wait de 100ms . Es importante agregarlo porque si no lo tenemos la aplicación va a ejecutar lo más rápido que pueda y va a usar el 100% de tu CPU.
Dentro de los estados hay dos partes una que es el código que ejecuto y la decisión al estado que quiero pasar.
Por ejemplo cuando prendo el LED, mi código de ejecución es simplemente actualizar mi valor, y la decisión es siempre pasar al siguiente estado. En los de espera no estoy ejecutando ningún código, simplemente veo si ya paso el tiempo, si no a pasado puedo regresar y si ya paso cambio de estado.
Ahora cambio el estado del LED en dos casos pero no necesito variables porque la actualización del valor la realizo fuera del case. Con esto puedo reducir el número de variables que utilizo.
El clúster de estado es mi información local que controlo dentro del ciclo y me da el estado de mi maquina, esto permite encapsular la información y facilitar entender que está pasando en el programa.
También tanto el cluster como el Enum que estoy utilizando son Type definitions, esto permite que cuando las actualice en todos los lugares de mi código se actualicen y es más fácil cambiar el código.
Saludos
Benjamin C
Senior Systems Engineer // CLA // CLED // CTD
Adjuntos:
State Machine with Timing.zip ‏79 KB

Similar Messages

  • Temporizacion de los cuadros de una secuencia

    Hola, desearia  saber como poder hacer que cada cuadro de una secuencia se ejecute el tiempo que yo desee.
    Estoy usando la versio 8.0
    Muchas Gracias a Todos
    Alejandro

    Hola Alejandro!
    La idea que se me ocurre en este momento es introducir un condicional de tiempo que te permita permanecer en cada estructura por cierto tiempo. Te estoy anexando un ejemplo que hice donde tengo tres Frames en mi Structure Sequence y cada uno prende un LED. Cada Frame cuenta con un delay de medio segundo, entonces cada LED prende con medio segundo de diferencia respecto al anterior.
    Espero que esto te ayude, si necesitas algo más no dudes en preguntar!
    Saludos
    Attachments:
    Ejemplo Temporizacion.vi ‏9 KB

  • Duplicar salida fuera de bucle

    Hola a todos de nuevo, para continuar con el ejercicio que estoy haciendo, necesito sacar una señal que está dentro de un bucle fuera de el, adjuto hay un ejemplo de algo parecido que deseo hacer. El LED que está fuera  del bucle debe tener siempre el mismo estado que el que está dentro. Lo he intentado de varias formas como se ve en el ejemplo adjunto, pero no consigo hacerlo funcionar.
    De nuevo gracias por vuestra colaaboración.
    Solved!
    Go to Solution.
    Attachments:
    duplicar.vi ‏8 KB
    duplicar.vi ‏8 KB

    Hola!
    Aquí te pongo un VI con un par de formas de hacerlo, con variables locales y con nodos de propiedad.
    Ya me dirás que te parece!
    Applications Engineer - Certified LabVIEW Developer & Certified TestStand Developer
    Attachments:
    foro.vi ‏9 KB

  • Varios bucles while no se ejecutan

    Hola, tengo un problema con una aplicación que estoy desarrollando en donde combino varios bucles while para ejecutar diferentes funciones en paralelo. La aplicación combina timed loops y bucles while estándar, en total unos 12. El caso es que en ocasiones algunos de los bucles while no se ejecutan cuando ejecuto la aplicación, es mas, hay veces que sólo se ejecuta la primera iteración de estos bucles que fallan y luego no se ejecutan mas. Esto no siempre ocuerre y a veces al hacer un pequeño cambio en alguno de los bulcles, como cambiar los milisegundos a esperar, funciona aunque esto no funciona para siempre.
    Si me podéis ayudar con lo que puede estar pasando?
    Gracias y un saludo.
    Larrito 

    Translation via google:
    Several while loops are not executed
    Hi, I have a problem with an application I'm developing where I combineseveral loops to perform different functions in parallel. Applicationcombines timed standard loops and while loops, a total of 12. The fact is that sometimes some of the loops while not running when I run theapplication, but there are times when only runs the first iteration of theseloops that fail and then not run more. This is not always ocuerre and sometimes make a small change in one of the bulcles, such as changing the milliseconds to wait, it works but this does not workforever.
    If you can help me with what might be happening?
    Thanks and regards.
    Larrito
    Can you attach your program? Maybe some of your stop conditions are switch action and are still false when the program starts, maybe due to race conditions?
    LabVIEW Champion . Do more with less code and in less time .

  • Copyrigths for the bucles no needed?

    Hy.
    Can anyone let me know if I can use for example just the music of the bucles of "delicate piano" for an introduction of some videos with no problems for the copyrigths?
    Thank you very much

    Apple's licensing agreement (http://support.apple.com/kb/HT2931) is pretty clear: You can do whatever you want with the loops and jingles, including publishing your music, as long as you don't re-distribute them as loops.

  • Armar un bucle para editar imagenes jpg

    Estoy haciendo una aplicacion que al poner una imagen de pelotitas (del mismo color pero distinto tamaño) labview la filtra y mide los tamaños para presentarlos en un informe. eso lo pude hacer mi problema es que cuando corro el programa este me deja elegir la imagen y la procesa y termina. 
    Lo que yo necesitaria es que despues de analizarla pueda seguir modificando parametros y tambien pueda cambiar de imagen
    si alguien me puede ayudar lo agradeceria de corazon.
    adjunto el vi de lo que tengo hecho. 
    Attachments:
    tett.vi ‏76 KB

    Hola Aleg
    En ese caso podrías utilizar una maquina de estados en donde puedes inicializar tu aplicación en el siguiente estado esperar mediante una estructura de eventos los parámetros que se deseen modificar de la imagen o en su defecto el siguiente paso al procesamiento de la imagen.
    En estos links puedes encontrar información de cómo encontrar ejemplos como el de la state machine (maquina de estados), event structures (estructuras de eventos) además de templates para comenzar tu proyecto.
    LabVIEW Templates and Sample Projects
    Finding Examples for NI LabVIEW
    Saludos
    Esteban R.

  • Bucle Analog Output Generador

    Hola buenos dias,
    Tengo un problema al intentar montar un generador de senales en Labview. Quisiera poner un interruptor para encender y apagar el generador.
    Incluyo el codigo que estoy empleando.
    Muchas gracias por vuestra ayuda.

    Como comenta pierreV , lo mejor  para trabajar con generacion de señales es empezar por ejemplos y en tenrer claros conceptos como:
     --- rata de muestro (rate) ,
     --- Muestras por canal (Samples per channel ) 
     --- tamaño del buffer.
     --- modos de regeneracion -->http://digital.ni.com/public.nsf/allkb/DD750D84BAD703E386256E6E005B41AC
    Jonathan Cruz
    CHALLENGER
    K U D O S __ B I E N V E N I D O S

  • I need some help here

    hi, ^-^, i was programming the Caesar encription method, this one:
    import java.io.*;
    public class lol {
              public static void main (String args[]) throws Exception{
                   int seleccion, longi, w, x, y, z;
                   String sel, texto, encrip="";
                   boolean a=false, b=false;
                                                      System.out.print("Enter a text to encript: ");
                                                      DataInputStream entrada3 = new DataInputStream(System.in);
                                                      texto = entrada3.readLine();
                                                      w=1;
                                                      z=0;
                                                      for(x=1;x==texto.length();x++){
                                                           if(texto.substring(z,w)!= (" ")){
                                                                encrip = encrip + texto.substring(z,w);
                                                                z++;
                                                                w++;
                                                           } else{
                                                                z++;
                                                                w++;
                                                      w=1;
                                                      z=0;
                                                      if ((encrip.length()/2)==0){
                                                           longi = ((encrip.length()^(1/2))+1);
                                                      } else{
                                                           longi = ((encrip.length()^(1/2)));
                                                      String crip[][] = new String[longi][longi];
                                                      texto = "";
                                                      for(x=0;x==longi;x++){
                                                           for(y=0;y==longi;y++){
                                                                crip[y][x]=(encrip.substring(z,w));
                                                                w++;
                                                                z++;
    for(x=0;x==longi;x++){
    for(Y=0;y==longi;y++){
    texto=texto+crip[x][y];
                                                      System.out.println("your ecripted text is: " + texto);
    all it do, is: read the text, decompose it, so it dosnt have any spaces, and then, it create an array whit the dimension of the text^1/2 +1 if the text/2==true or the other writted there; then it fills the array (0.0, 1.0, 2.0....,0.1,1.1,...etc), and then it show u the encripted text. My problem here its that the program dosnt go trought any "for bucle" O_o, dunno why.. any help would be apriciated, thx
    Message was edited by:
    [email protected]

    I'm sorry but my Babel fish isn't working. bucle == loop (like English buckle, I guess)
    @OP:
    The second part of a for-loops (bucle) is a condition that must be true.
    So you should write//for(x=1;x == texto.length(); x++) { //<--  not this
    for(x=1;x < texto.length() + 1; x++) {
        // etc
    }and the same for the other loops.
    Strings are compared using the equals() method, not ==. So//if(texto.substring(z,w)!= (" ")){ // <-- not this
    if(!texto.substring(z,w).equals(" ")) {
        // etc
    }Exponentiation (potencia) in Java does not use the ^ operator, you have
    to use Math.pow()//longi = ((encrip.length()^(1/2))); // <-- not this
    longi = Math.round(Math.pow((double)encrip.length(), 0.5));longi will be a long, not an int (but can be used the same way in your
    code).

  • Error "Conversion failed when converting date and/or time from character string" to execute one query in sql 2008 r2, run ok in 2005.

    I have  a table-valued function that run in sql 2005 and when try to execute in sql 2008 r2, return the next "Conversion failed when converting date and/or time from character string".
    USE [Runtime]
    GO
    /****** Object:  UserDefinedFunction [dbo].[f_Pinto_Graf_P_Opt]    Script Date: 06/11/2013 08:47:47 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE   FUNCTION [dbo].[f_Pinto_Graf_P_Opt] (@fechaInicio datetime, @fechaFin datetime)  
    -- Declaramos la tabla "@Produc_Opt" que será devuelta por la funcion
    RETURNS @Produc_Opt table ( Hora datetime,NSACOS int, NSACOS_opt int)
    AS  
    BEGIN 
    -- Crea el Cursor
    DECLARE cursorHora CURSOR
    READ_ONLY
    FOR SELECT DateTime, Value FROM f_PP_Graficas ('Pinto_CON_SACOS',@fechaInicio, @fechaFin,'Pinto_PRODUCTO')
    -- Declaracion de variables locales
    DECLARE @produc_opt_hora int
    DECLARE @produc_opt_parc int
    DECLARE @nsacos int
    DECLARE @time_parc datetime
    -- Inicializamos VARIABLES
    SET @produc_opt_hora = (SELECT * FROM f_Valor (@fechaFin,'Pinto_PRODUC_OPT'))
    -- Abre y se crea el conjunto del cursor
    OPEN cursorHora
    -- Comenzamos los calculos 
    FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
    /************  BUCLE WHILE QUE SE VA A MOVER A TRAVES DEL CURSOR  ************/
    WHILE (@@fetch_status <> -1)
    BEGIN
    IF (@@fetch_status = -2)
    BEGIN
    -- Terminamos la ejecucion 
    BREAK
    END
    -- REALIZAMOS CÁLCULOS
    SET @produc_opt_parc = (SELECT dbo.f_P_Opt_Parc (@fechaInicio,@time_parc,@produc_opt_hora))
    -- INSERTAMOS VALORES EN LA TABLA
    INSERT @Produc_Opt VALUES (@time_parc,@nsacos, @produc_opt_parc)
    -- Avanzamos el cursor
    FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
    END
    /************  FIN DEL BUCLE QUE SE MUEVE A TRAVES DEL CURSOR  ***************/
    -- Cerramos el cursor
    CLOSE cursorHora
    -- Liberamos  los cursores
    DEALLOCATE cursorHora
    RETURN 
    END

    You can search the forums for that error message and find previous discussions - they all boil down to the same problem.  Somewhere in your query that calls this function, the code invoked implicitly converts from string to date/datetime.  In general,
    this works in any version of sql server if the runtime settings are correct for the format of the string data.  The fact that it works in one server and not in another server suggests that the query executes with different settings - and I'll assume for
    the moment that the format of the data involved in this conversion is consistent within the database/resultset and consistent between the 2 servers. 
    I suggest you read Tibor's guide to the datetime datatype (via the link to his site below) first - then go find the actual code that performs this conversion.  It may not be in the function you posted, since that function also executes other functions. 
    You also did not post the query that calls this function, so this function may not, in fact, be the source of the problem at all. 
    Tibor's site

  • Imposible to activate characteristic with one reference attribute in 3.5

    Dear Experts,
    I have a really strange problem in 3.5 version.
    I have ZUTSUP attribute like reference char from 0FUNCT_LOC.
    I deleted one Z Character Attribute from 0FUNCT_LOC, when I try to active it shows one error.
    "Characteristic 0FUNCT_LOC: Master data has to be activated before conversion"
    Ok, I go to "Note 451773" trying to activate master data. Like explains this post: "Unable to Activate master Data InfoObject ''0EQUIPMENT''
    But, when i try to reactivate active version... another error
    "Characteristic 0FUNCT_LOC: Navigation attribute ZCIRCUITO does not exist for char. ZUTSUP"
    Well.. this is a bucle, because, in referenced attribute I don't have navigation attribute ZCIRCUITO. and I can't modify it. I tried to reactive ZUTSUP (without ZUTSUP) but problem is...
    "Characteristic ZUTSUP: Referenced characteristic 0FUNCT_LOC not (actively) available"
    Well... Any Idea?
    Thank you!

    Very easy if you know...
    Create another time the same attribute with same parameters and active it. Then Acitve Data Master of InfoObject.
    That's all, now you can delete the attribute normally.
    Edited by: Roger Peruchet on Mar 1, 2010 5:56 PM

  • [SOLVED] KDEmod problem after Xorg Update

    Hi!
    Before explain my problem, I have to say that my english isn't perfect, sorry ^_^ (i'm spanish).
    Ok, let's go:
    One week ago, I updated my system and Xorg was updated too, since that update my KDEmod restarts always. I read the kdm.log, and it says something about the RGBPath, then I went to my xorg.conf and comment that line.
    After that, I could start my X with Gnome, but when I tried with KDEMod, it says "the module Record doesn't exist", I was searching about this module, and I saw that in xorg.conf there was a line that load this module. I also comment it too.
    Now, when I try to start KDE, it loads, and when in the splashscreen appears the "K", if I click the mouse then appears my Desktop for 3 or 4 seconds, after that, KDE restarts and splashscreen loads another time, so i'm in a bucle. BTW, if i don't click the mouse, it also restarts after 7 or 8 seconds that K is "load", and begin the bucle loading kde with the splash screen too.
    kdm.log doesn't return an error.
    What do you think about that?.
    Thanks!
    EDIT:
    I forgot something: another error that I had is with "libGLcore", it said: "libGLcore.177" and "libGLcore.180" have the same name but different file type (or something like that). I fix with the re-install of the manual nvidia drivers.]
    =================================================================
    FIX
    writte in konsole:
    nvidia-xconfig
    THen add to xorg.conf
    Section "ServerFlags"
    OPtion "AutoAddDevices" "False"
    EndSection
    And then, I fix it.
    =================================================================
    Last edited by d4rkb1t (2008-12-09 20:13:47)

    here you have
    X.Org X Server 1.5.3
    Release Date: 5 November 2008
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 2.6.27-ARCH x86_64
    Current Operating System: Linux nin 2.6.27-ARCH #1 SMP PREEMPT Fri Nov 28 10:35:44 UTC 2008 x86_64
    Build Date: 06 December 2008 11:11:31AM
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Mon Dec 8 17:34:12 2008
    (==) Using config file: "/etc/X11/xorg.conf"
    (==) ServerLayout "X.org Configured"
    (**) |-->Screen "Screen0" (0)
    (**) | |-->Monitor "Monitor0"
    (**) | |-->Device "Card0"
    (**) |-->Input Device "Touchpad"
    (**) |-->Input Device "Mouse0"
    (**) |-->Input Device "Keyboard0"
    (==) Automatically adding devices
    (==) Automatically enabling devices
    (==) Including the default font path /usr/share/fonts/misc,/usr/share/fonts/100dpi:unscaled,/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/TTF,/usr/share/fonts/Type1.
    (**) FontPath set to:
    /usr/share/fonts/misc,
    /usr/share/fonts/100dpi:unscaled,
    /usr/share/fonts/75dpi:unscaled,
    /usr/share/fonts/TTF,
    /usr/share/fonts/Type1,
    /usr/share/fonts/misc,
    /usr/share/fonts/100dpi:unscaled,
    /usr/share/fonts/75dpi:unscaled,
    /usr/share/fonts/TTF,
    /usr/share/fonts/Type1
    (**) ModulePath set to "/usr/lib/xorg/modules"
    (**) Extension "Composite" is enabled
    (WW) AllowEmptyInput is on, devices using drivers 'kbd' or 'mouse' will be disabled.
    (WW) Disabling Mouse0
    (WW) Disabling Keyboard0
    (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
    (II) No APM support in BIOS or kernel
    (II) Loader magic: 0x7b54e0
    (II) Module ABI versions:
    X.Org ANSI C Emulation: 0.4
    X.Org Video Driver: 4.1
    X.Org XInput driver : 2.1
    X.Org Server Extension : 1.1
    X.Org Font Renderer : 0.6
    (II) Loader running on linux
    (++) using VT number 7
    (--) PCI:*(0@1:0:0) nVidia Corporation GeForce 8600M GT rev 161, Mem @ 0xfd000000/16777216, 0xe0000000/268435456, 0xfa000000/33554432, I/O @ 0x0000ef00/128, BIOS @ 0x????????/131072
    (II) System resource ranges:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [5] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    (II) "extmod" will be loaded. This was enabled by default and also specified in the config file.
    (II) "dbe" will be loaded. This was enabled by default and also specified in the config file.
    (II) "glx" will be loaded. This was enabled by default and also specified in the config file.
    (II) "freetype" will be loaded. This was enabled by default and also specified in the config file.
    (II) "dri" will be loaded by default.
    (II) LoadModule: "dbe"
    (II) Loading /usr/lib/xorg/modules/extensions//libdbe.so
    (II) Module dbe: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension DOUBLE-BUFFER
    (II) LoadModule: "xtrap"
    (II) Loading /usr/lib/xorg/modules/extensions//libxtrap.so
    (II) Module xtrap: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension DEC-XTRAP
    (II) LoadModule: "glx"
    (II) Loading /usr/lib/xorg/modules/extensions//libglx.so
    (II) Module glx: vendor="NVIDIA Corporation"
    compiled for 4.0.2, module version = 1.0.0
    Module class: X.Org Server Extension
    (II) NVIDIA GLX Module 180.06 Sat Nov 8 18:16:47 PST 2008
    (II) Loading extension GLX
    (II) LoadModule: "extmod"
    (II) Loading /usr/lib/xorg/modules/extensions//libextmod.so
    (II) Module extmod: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    Module class: X.Org Server Extension
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension SHAPE
    (II) Loading extension MIT-SUNDRY-NONSTANDARD
    (II) Loading extension BIG-REQUESTS
    (II) Loading extension SYNC
    (II) Loading extension MIT-SCREEN-SAVER
    (II) Loading extension XC-MISC
    (II) Loading extension XFree86-VidModeExtension
    (II) Loading extension XFree86-Misc
    (II) Loading extension XFree86-DGA
    (II) Loading extension DPMS
    (II) Loading extension TOG-CUP
    (II) Loading extension Extended-Visual-Information
    (II) Loading extension XVideo
    (II) Loading extension XVideo-MotionCompensation
    (II) Loading extension X-Resource
    (II) LoadModule: "freetype"
    (II) Loading /usr/lib/xorg/modules/fonts//libfreetype.so
    (II) Module freetype: vendor="X.Org Foundation & the After X-TT Project"
    compiled for 1.5.3, module version = 2.1.0
    Module class: X.Org Font Renderer
    ABI class: X.Org Font Renderer, version 0.6
    (II) Loading font FreeType
    (II) LoadModule: "synaptics"
    (II) Loading /usr/lib/xorg/modules/input//synaptics_drv.so
    (II) Module synaptics: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 0.99.1
    Module class: X.Org XInput Driver
    ABI class: X.Org XInput driver, version 2.1
    (II) LoadModule: "dri"
    (II) Loading /usr/lib/xorg/modules/extensions//libdri.so
    (II) Module dri: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    ABI class: X.Org Server Extension, version 1.1
    (II) Loading extension XFree86-DRI
    (II) LoadModule: "nvidia"
    (II) Loading /usr/lib/xorg/modules/drivers//nvidia_drv.so
    (II) Module nvidia: vendor="NVIDIA Corporation"
    compiled for 4.0.2, module version = 1.0.0
    Module class: X.Org Video Driver
    (II) LoadModule: "synaptics"
    (II) Reloading /usr/lib/xorg/modules/input//synaptics_drv.so
    (II) NVIDIA dlloader X Driver 180.06 Sat Nov 8 17:56:34 PST 2008
    (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
    (II) Primary Device is: PCI 01@00:00:0
    (II) Loading sub module "fb"
    (II) LoadModule: "fb"
    (II) Loading /usr/lib/xorg/modules//libfb.so
    (II) Module fb: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    ABI class: X.Org ANSI C Emulation, version 0.4
    (II) Loading sub module "wfb"
    (II) LoadModule: "wfb"
    (II) Loading /usr/lib/xorg/modules//libwfb.so
    (II) Module wfb: vendor="X.Org Foundation"
    compiled for 1.5.3, module version = 1.0.0
    ABI class: X.Org ANSI C Emulation, version 0.4
    (II) Loading sub module "ramdac"
    (II) LoadModule: "ramdac"
    (II) Module "ramdac" already built-in
    (II) resource ranges after probing:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [5] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
    (==) NVIDIA(0): RGB weight 888
    (==) NVIDIA(0): Default visual is TrueColor
    (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
    (**) NVIDIA(0): Option "NoLogo" "True"
    (**) NVIDIA(0): Option "RenderAccel" "True"
    (**) NVIDIA(0): Option "TripleBuffer" "True"
    (**) NVIDIA(0): Option "AddARGBGLXVisuals" "True"
    (**) NVIDIA(0): Option "OnDemandVBlankInterrupts" "True"
    (**) NVIDIA(0): Option "PixmapCacheSize" "300000"
    (**) NVIDIA(0): Enabling RENDER acceleration
    (II) NVIDIA(0): Support for GLX with the Damage and Composite X extensions is
    (II) NVIDIA(0): enabled.
    (II) NVIDIA(0): NVIDIA GPU GeForce 8600M GT (G84) at PCI:1:0:0 (GPU-0)
    (--) NVIDIA(0): Memory: 524288 kBytes
    (--) NVIDIA(0): VideoBIOS: 60.84.5e.00.08
    (II) NVIDIA(0): Detected PCI Express Link width: 16X
    (--) NVIDIA(0): Interlaced video modes are supported on this GPU
    (--) NVIDIA(0): Connected display device(s) on GeForce 8600M GT at PCI:1:0:0:
    (--) NVIDIA(0): Seiko (DFP-0)
    (--) NVIDIA(0): Seiko (DFP-0): 330.0 MHz maximum pixel clock
    (--) NVIDIA(0): Seiko (DFP-0): Internal Dual Link LVDS
    (II) NVIDIA(0): Assigned Display Device: DFP-0
    (II) NVIDIA(0): Validated modes:
    (II) NVIDIA(0): "1280x800"
    (II) NVIDIA(0): Virtual screen size determined to be 1280 x 800
    (--) NVIDIA(0): DPI set to (98, 96); computed from "UseEdidDpi" X config
    (--) NVIDIA(0): option
    (**) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
    (--) Depth 24 pixmap format is 32 bpp
    (II) do I need RAC? No, I don't.
    (II) resource ranges after preInit:
    [0] -1 0 0xffffffff - 0xffffffff (0x1) MX[b]
    [1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[b]
    [2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[b]
    [3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[b]
    [4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[b]
    [5] -1 0 0x00000000 - 0x00000000 (0x1) IX[b]
    (II) NVIDIA(0): Initialized GPU GART.
    (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
    (II) NVIDIA(0): may not be running or the "AcpidSocketPath" X
    (II) NVIDIA(0): configuration option may not be set correctly. When the
    (II) NVIDIA(0): ACPI event daemon is available, the NVIDIA X driver will
    (II) NVIDIA(0): try to use it to receive ACPI event notifications. For
    (II) NVIDIA(0): details, please see the "ConnectToAcpid" and
    (II) NVIDIA(0): "AcpidSocketPath" X configuration options in Appendix B: X
    (II) NVIDIA(0): Config Options in the README.
    (II) NVIDIA(0): ACPI display change hotkey events enabled: the X server is new
    (II) NVIDIA(0): enough to receive ACPI display change hotkey events.
    (II) NVIDIA(0): Setting mode "1280x800"
    (II) Loading extension NV-GLX
    (II) NVIDIA(0): NVIDIA 3D Acceleration Architecture Initialized
    (==) NVIDIA(0): Disabling shared memory pixmaps
    (II) NVIDIA(0): Using the NVIDIA 2D acceleration architecture
    (**) NVIDIA(0): Option "BackingStore" "True"
    (**) NVIDIA(0): Backing store enabled
    (==) NVIDIA(0): Silken mouse enabled
    (II) NVIDIA(0): DPMS enabled
    (II) Loading extension NV-CONTROL
    (II) Loading extension XINERAMA
    (WW) NVIDIA(0): Option "AGPFastWrite" is not used
    (WW) NVIDIA(0): Option "EnablePageFlip" is not used
    (==) RandR enabled
    (II) Initializing built-in extension MIT-SHM
    (II) Initializing built-in extension XInputExtension
    (II) Initializing built-in extension XTEST
    (II) Initializing built-in extension XKEYBOARD
    (II) Initializing built-in extension XC-APPGROUP
    (II) Initializing built-in extension SECURITY
    (II) Initializing built-in extension XINERAMA
    (II) Initializing built-in extension XFIXES
    (II) Initializing built-in extension RENDER
    (II) Initializing built-in extension RANDR
    (II) Initializing built-in extension COMPOSITE
    (II) Initializing built-in extension DAMAGE
    (II) Initializing built-in extension XEVIE
    (II) Initializing extension GLX
    (II) Synaptics touchpad driver version 0.99.1
    Touchpad no synaptics event device found
    (**) Option "Device" "/dev/input/mouse0"
    (**) Option "SHMConfig" "on"
    (**) Option "LeftEdge" "1700"
    (**) Option "RightEdge" "5300"
    (**) Option "TopEdge" "1700"
    (**) Option "BottomEdge" "4200"
    (**) Option "FingerLow" "15"
    (**) Option "FingerHigh" "40"
    (**) Option "MaxTapTime" "180"
    (**) Option "MaxTapMove" "220"
    (**) Option "VertScrollDelta" "100"
    Query no Synaptics: 6003C8
    (--) Touchpad: no supported touchpad found
    (**) Option "SendCoreEvents"
    (**) Touchpad: always reports core events
    (II) evaluating device (Touchpad)
    (II) XINPUT: Adding extended input device "Touchpad" (type: TOUCHPAD)
    Touchpad no synaptics event device found
    Query no Synaptics: 6003C8
    (--) Touchpad: no supported touchpad found
    (II) config/hal: Adding input device PS/2 Generic Mouse
    (II) LoadModule: "evdev"
    (II) Loading /usr/lib/xorg/modules/input//evdev_drv.so
    (II) Module evdev: vendor="X.Org Foundation"
    compiled for 1.5.2, module version = 2.0.7
    Module class: X.Org XInput Driver
    ABI class: X.Org XInput driver, version 2.1
    (**) PS/2 Generic Mouse: always reports core events
    (**) PS/2 Generic Mouse: Device: "/dev/input/event12"
    (II) PS/2 Generic Mouse: Found x and y relative axes
    (II) PS/2 Generic Mouse: Found mouse buttons
    (II) PS/2 Generic Mouse: Configuring as mouse
    (II) XINPUT: Adding extended input device "PS/2 Generic Mouse" (type: MOUSE)
    (II) config/hal: Adding input device Logitech USB Receiver
    (**) Logitech USB Receiver: always reports core events
    (**) Logitech USB Receiver: Device: "/dev/input/event11"
    (II) Logitech USB Receiver: Found x and y relative axes
    (II) Logitech USB Receiver: Found mouse buttons
    (II) Logitech USB Receiver: Configuring as mouse
    (II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: MOUSE)
    (II) config/hal: Adding input device PS/2 Generic Mouse
    (**) PS/2 Generic Mouse: always reports core events
    (**) PS/2 Generic Mouse: Device: "/dev/input/event9"
    (II) PS/2 Generic Mouse: Found x and y relative axes
    (II) PS/2 Generic Mouse: Found mouse buttons
    (II) PS/2 Generic Mouse: Configuring as mouse
    (II) XINPUT: Adding extended input device "PS/2 Generic Mouse" (type: MOUSE)
    (II) config/hal: Adding input device Broadcom Corp
    (**) Broadcom Corp: always reports core events
    (**) Broadcom Corp: Device: "/dev/input/event8"
    (II) Broadcom Corp: Found x and y relative axes
    (II) Broadcom Corp: Found mouse buttons
    (II) Broadcom Corp: Configuring as mouse
    (II) XINPUT: Adding extended input device "Broadcom Corp" (type: MOUSE)
    (II) config/hal: Adding input device Broadcom Corp
    (**) Broadcom Corp: always reports core events
    (**) Broadcom Corp: Device: "/dev/input/event7"
    (II) Broadcom Corp: Found keys
    (II) Broadcom Corp: Configuring as keyboard
    (II) XINPUT: Adding extended input device "Broadcom Corp" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) Broadcom Corp: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) Broadcom Corp: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) Broadcom Corp: xkb_layout: "us"
    (II) config/hal: Adding input device Video Bus
    (**) Video Bus: always reports core events
    (**) Video Bus: Device: "/dev/input/event5"
    (II) Video Bus: Found keys
    (II) Video Bus: Configuring as keyboard
    (II) XINPUT: Adding extended input device "Video Bus" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) Video Bus: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) Video Bus: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) Video Bus: xkb_layout: "us"
    (II) config/hal: Adding input device AT Translated Set 2 keyboard
    (**) AT Translated Set 2 keyboard: always reports core events
    (**) AT Translated Set 2 keyboard: Device: "/dev/input/event1"
    (II) AT Translated Set 2 keyboard: Found keys
    (II) AT Translated Set 2 keyboard: Configuring as keyboard
    (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
    (**) Option "xkb_rules" "base"
    (**) AT Translated Set 2 keyboard: xkb_rules: "base"
    (**) Option "xkb_model" "evdev"
    (**) AT Translated Set 2 keyboard: xkb_model: "evdev"
    (**) Option "xkb_layout" "us"
    (**) AT Translated Set 2 keyboard: xkb_layout: "us"
    (II) config/hal: Adding input device Macintosh mouse button emulation
    (**) Macintosh mouse button emulation: always reports core events
    (**) Macintosh mouse button emulation: Device: "/dev/input/event0"
    (II) Macintosh mouse button emulation: Found x and y relative axes
    (II) Macintosh mouse button emulation: Found mouse buttons
    (II) Macintosh mouse button emulation: Configuring as mouse
    (II) XINPUT: Adding extended input device "Macintosh mouse button emulation" (type: MOUSE)

  • Changing resolution settings in OfficeJet

    Hi everyone.
    I'm scanning a few old family pictures, size is approximately 5x3 inch.
    The scanned picture I get is very small, 900x600 give or take.
    I need to print those pictures in a photobook and this size is way too small.
    Is there a way to get bigger pictures?
    I tried to increase the resolution, up to 9600, but the result is the same.
    Thank you.

    Hi @bucla,
    Welcome to the HP Forums!
    I noticed that you are trying to change your resolution settings on your Officejet printer, and I am happy to look into this for you!
    For further assistance, I will need some additional information:
    The Product/Model Number of your printer. Follow instructions in this link. Finding Your HP Product Model Number.
    If you are using a Windows or Mac Operating System, and the version number. To find the exact version, visit this link. Whatsmyos.
    Please see this post, Want Good Answers? Ask Good Questions, by @Bob_Headrick, so you can get the most out of these forums.  
    Thank you for posting, and hope to hear from you soon!
    RnRMusicMan
    I work on behalf of HP
    Please click “Accept as Solution ” if you feel my post solved your issue, it will help others find the solution.
    Click the “Kudos Thumbs Up" to say “Thanks” for helping!

  • Array Out of Bounds Exception. Where?

    Hello,
    I am developing an application using Visual Cafe 3.0. The application access a file every minute to read a new line and show data in a MultiList. First the code reads the header of the file to get all options, and then reads a new line avery minute to get results for that options.
    It is something like this:
    Option1, option2, option3,...
    1234, 45, 0, ...
    532, 23, 2, ...
    and so on...
    Code is quite large, and I call a method which is generating the exception (java.lang.ArrayOutofBoundsException). Exception is reached after a random number of calls to that method each time.
    I have some variables declared in the method and some other declared outside of that method because I use them in other part of the code.
    I catch the exception in the method which calls this method (outside following code)
    Here is the method that is failing.
    Please can anyone see where is the code reaching that exception?
    //These are variables used outside the method
    String[] lista_op = new String[100];
    boolean[] lista_bo = new boolean[100];
    String[] lista_va = new String[100];
    int n_opciones = 0;
    int lon = 0;
    char[] resultados;
    //And this is the method
    //Basically I pass a line of text to the method and the length (actually I am not using that variable and some others)
    //Length of all arrays is 100, but number of used items is about 50
         public void results(char[] resultados, int lon)
             int opciones = 0;
             int i = 0;
             int j = 0;
             int n = 0;
             int c = 0;
             int b = 0;
             int z = 0;
             int datoentero = 0;
             int datoanterior = 0;
             char coma = ',';
             String dato = "";
             String vacio = "";
             String datoantes = "";
             String cadena1 = "";
             String cadena2 = "";
             //int[] pos = new int[100];
              multilista.adjustHeadings();
                  //Bucle de busqueda de opciones seleccionadas y
                  //extraccion de datos
                  while (c < n_opciones){
                      if (lista_bo[c] == false){
                          lista_va[b] = lista_op[c];
                          //pos[b] = c;
                          n = c + 3;
                          // Bucle de busqueda de resultados
                          for ( j = 0; i < n; j++){
                              if (resultados[j] == coma){
                                  i++;
                          i = 0;
                          while (resultados[j] != coma){
                              dato = dato + resultados[j];
                              j++;
                          // Fin de bucle de busqueda de resultados
                          cadena1 = lista_va;
              datoentero = Integer.parseInt(dato);
              //textArea1.append(" " + datoentero);
              while (z < Lista_seleccion.getItemCount()){
              cadena2 = Lista_seleccion.getItem(z);
              if (cadena1.equals(cadena2)){
              datoantes = multilista.getCellText(z, 1);
              if (!datoantes.equals(vacio)){
              //textArea1.append("&" + datoantes + "&");
              datoanterior = Integer.parseInt(datoantes);
              datoentero = datoentero + datoanterior;
              multilista.addTextCell(z, 1, Integer.toString(datoentero));
              //grafica(datoentero, z);
              //notificar(datoentero, z);
              z++;
              z = 0;
                   //textArea1.append(" " + dato + " " + c + " " + n);
              b++;
              c++;
              dato = "";
              //Fin de bucle de busqueda de opciones seleccionadas
                   opciones = Lista_seleccion.getItemCount();
                   while (i < opciones){
                   multilista.addTextCell(i, 0, Lista_seleccion.getItem(i));
                   i++;

    The piece of code I showed before works for me when I do
    System.out.println(sw.toString());
    I haven't tried to append it to a text area, but if you say it gives you problem you could try with this:
    // .. keeping the first 3 lines of my previos code
    StringTokenizer st = new StringTokenizer(sw.toString());
    while (st.hasMoreTokens()) {
      textArea.append(st.nextToken());
      textArea.append("\n"); // newline
    }

  • Xy graph 1 spot in each axis

    Hi all:
    I'm plotting voltage and current in a XY graph. The fact is that instead of plotting just a spot (voltage/current coordinates), it plots 1 spot in the x axis(making 0 the Y axis), and in the next while bucle iteration it plots in the Y axis (making 0 the X axis). When I'm debugging using step by step option it plots it correctly, I think maybe its a time problem.
     Im using NI-elvis to adquire the measurement.  Im getting mad with this so please a need help.
    Thanks so much

    If the outcome is different when using step-by-step execution, you most likely have a race condition (or the graph update is only temporary and gets overwritten quicky with something else). Please show us a simplified version of your code and make sure it contains typical data.
    LabVIEW Champion . Do more with less code and in less time .

  • Iteration non sequencial with While Loop

    I've a SubVi in while Loop. Iteration n+1 will execute when Iteration n finish.
    Can I execute this SubVi in paralel (no sequencial)?
    In Spanish:
    Tengo una SubVi dentro de un bucle while. Pero este bucle actúa de forma secuencial. No se cargará la iteración n+1 hasta que la n acabe.
    ¿Cómo puedo hacer para que se ejecuten las iteraciones de forma no secuencial? Es decir, que no haya que espera a que acabe una para que se ejecute la siguiente.

    Hello,
    it is not possible. The while loop works as follows: 1) execute the code inside 2) check the ternimation condition 3) depending on that, continues with the following iteration or exit from the while loop. So, it is not possible what you are asking for.
    Maybe you have to use two while loops.
    Regards
    rusC

Maybe you are looking for