Ezra,
I recommend that you try communicating with your instruments through Measurement And Automation Explorer. Clicking "query" with the default "*IDN?" string should, of course, cause the device to respond with its identification information. If this works every time, then there is most likely a small flaw in the logic of your program. Perhaps the first time you run the program you are not sending the proper termination character? Also, always be sure to include a brief delay between any GPIB writes and reads as instruments need some time to respond. Finally, if you're using LabVIEW 7.0, you could try using the Instrument I/O Assistant to query the HP devices. It's definitely a useful feature that especially simplifies parsing of instrument responses.
Thanks!
Alan
Applications Engineer
National Instruments