This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PGA460-Q1: circuit schematic

Part Number: PGA460-Q1
Other Parts Discussed in Thread: PGA460, , BOOSTXL-PGA460

I am using single transducer, so which circuit schematic should I use?also as I a am   using single transducer should I use DECPL pin?

  • Chethan,

    You have the choice of using a transformer driver (typically intended for closed-top transducers) or a direct-driver (typically intended for open-top transducers). To better answer this question, we will need to know:
    • What is the application?
    • What is the transducer's part number?
    • What is your required range (minimum and maximum distance)?

    Please read the PGA460 Ultrasonic Module Hardware and Software Optimization App Note (www.ti.com/.../slaa732) to get a better understanding of the difference between transformer driven versus direct driven modes, and closed-top versus open-top transducers. The PGA460's datasheet (www.ti.com/.../pga460-q1) section 8.1.1 "Transducer Types" also offers information on the differences.

    The DECPL pin is an optional pin/feature. Please read the datasheet section "7.3.9 Transducer Time and Temperature Decoupling" to determine if decoupling will be necessary for your particular application.

    I also recommend that you view the Ultrasonic Sensing with the PGA460-Q1 video series (training.ti.com/ultrasonic-sensing-pga460-q1) for a overview and demonstration of the PGA460's feature set via the EVM-GUI.
  • Thank you Akeem Whitehead for your reply.

    As you asked I am using it for liquid level sensing application.

    Transducer per no is AU5550.

    The required range is around 11 meter or 14 meter.
  • I am using it for level sensing application using single tranducer(part number:AU5550),could you please tell me which circuit schematic should I use?The required range is arround 11 meter .
  • Chethan,

    Is this specifically for liquid level sensing in a large tank? What is the tank diameter?

    I have never used the AU5550 transducer, so I am not certain what its maximum capable detection range is. Although, adding a horn to nearly transducer will help extend its forward facing range. See PGA460 Frequently Asked Questions (FAQ) and EVM Troubleshooting Guide (www.ti.com/.../slaa733.pdf) for details regarding the horn:

    4.4.9 What effect does a transducer horn have on the beam pattern? How can I focus the ultrasonic

    energy into a more forward facing direction?

    A horn is a mechanical add-on to the transducer, which artificially increases the depth and diameter of the

    transducer. By increasing the depth and diameter of the transducer, the beam angle is constrained to a

    narrower, more direct, and forward facing direction. By increasing the directivity of the beam, more sound

    pressure level is also transmitted in the forward facing direction, which improves the detectable range of

    the transducer. A horn is recommended to minimize the range of side-lobes and blind-spots, while

    enhancing the forward facing performance. Any transducer can be fitted with a horn for this purpose. A

    horn can only be use to focus, and cannot be used to widen the beam angle.

    However, assuming the liquid level's detectable surface area is flat/stable/wide, then I would recommend the SensComp 40KPT25 (Prowave 400EP250)  transducer. This 40kHz closed-top transducer has a large diameter, which focuses the forward facing energy to enable at least 10m detection of a flat surface (i.e. wall). Note that the PGA460's record length is limited to the equivalent of 11.2m. If you need to detect beyond this distance, refer to PGA460 Frequently Asked Questions (FAQ) and EVM Troubleshooting Guide for a workaround:

    5.1 How can I detect an object if it is further than 11m?

    To detect an object further than 11m, the user must issue n-number of listen-only (LO) commands

    immediately after the initial burst-and-listen (BAL) command expires.

    For example, if the target is at 15m, then the BAL command can be set with a maximum record length of

    65ms (or 11.2m to target) using Preset 1 (P1). Because a difference of 3.8m must be accounted for after

    the BAL record length expires, Preset 2 (P2) must be set with a minimum record length of 25ms (or

    4.214m to target). Once the Presets are set with the appropriate times, the master issues a P1 BAL

    command, waits until 65ms expire, then immediately issues a P2 LO command. When the Ultrasonic

    Measurement Results are pulled, an additional 11.2m must be added to the distance result to correctly

    capture the 15m object detection recording. The subsequent communication delay between the P1 BAL

    and P2 LO commands may or may not be negligible depending on the baud rate or communication mode

    used. Account for any master control delays in the distance calculation.

    To detect beyond 22.4m, initially issue a P1 BAL command, followed by a P2 LO command, and another

    P2 LO command, where P2 is set with a record length of 11.2m. Ultrasonic measurements beyond 10m

    become difficult to capture, unless the target is a large, flat, reflective surface. For this reason, the

    PGA460 was set with the typical maximum limit of 11.2m for a BAL or LO single command.

  • Can you please tell me how you can tell the difference between a genuine echo at 11.2 metres and an end of (P1) range reading? My EVM Ultrasonic Measurement Results (within the GUI) show "no echo" limit at 11.291. I want to read beyond 11.2 metres by using P2 in LO mode immediately after 11.2m but how can I tell if the "echo" (at the end of P1) is genuine or not?

    Regards,

    Alan McCloud

  • Hi Alan,
    You may need to stagger the P2 LO command such that you are able to detect the entire equivalent of an object at 11.2m. Instead of waiting until P1 completely expires, and then sending a P2 command, send a P1 burst+listen, and then wait a few ms before P1 expires to send a P2 LO command. This creates a bit of overlap between the max record length of P1, and the beginning of the P2 LO recording.

    Since it can be tricky to tell if the echo is genuine above 11m for a single burst+listen command, I suggest that you run multiple record cycles to compensate for any potential gap at 11.2m.

    Assuming you do not need to measure beyond 20m, I would recommend the following sequence:
    1) Run P1 Burst+Listen with a max record length of 65ms (or 11.2m) to check for activity up to 10m
    2) Wait until the record timer expires (at least 65m), then pull the results.
    3) Run a second P1 Burst+Listen with a max record length.
    4) Wait the equivalent of 10m (58.3ms), and then send a P2 LO command. Since the BL and LO commands are disruptive, the P1 BL command will stop even if the record timer hasn't finished, and the record timer will reset for the P2 LO command.
    5) P2 LO will effectively capture objects between the 10m to 21.2m range.

    This sequence will at least give you additional confidence for the 10m to 11.2 m range, which would otherwise be a gap. The assumption is that the target is not moving very fast either.
  • Hi Akeem,
    Thank you for your help. It looks a lot clearer now.
    Regards,
    Alan
  • Hi Akeem,

    Can you tell me whether I should be able to communicate with the PGA460 via Synchronous comms after power up? Basically, I am using TX, RX and CLK rather than the Asynchronous comms. I have tried reading the DEV_STAT0 register but the device returns 0x00 which while possibly correct, I believe should be 0x84?

    Are there some setup routines that need to be invoked before being able to read the DEV_STAT0?

    Regards,

    Alan

  • Hi Alan,

    Your connections should be correct: the synchronous mode requires the use of TXD, RXD, and SCLK. There is no chip/slave select on the PGA460 as typically found on SPI devices.

    No start or stop bits are required in the synchronous mode. The synchronous transmitted data would be identical to that of the asynchronous mode, but without the start/stop/inter-byte-space bits. For example, sending a Preset 2 Burst+Listen command to detect 4 objects using the PGA460 assigned with UART_ADDR=0, you’d send a continuously clocked synchronous sequence of {0x55,0x01,0x04,0xFA}, which is (from left to right) the sync field, addr-command byte, command data byte0, and checksum.

    There is no special setup routine that needs to be invoked to use the synchronous mode or read DEV_STAT0. At power-up DEV_STAT0's THR_CRC_ERR will be flagged logic-high. Assuming your REV_ID is 10, then yes, the readout value should be 0x84. To read DEV_STAT0 of UART_ADDR 0 (default), transmit the sequence {0x55 09 4C AA}, and the readout will be {0x40 84 3B}.

    At this time, the PGA460-Q1 EVM GUI is only enabled to fully evaluate the PGA460 in asynchronous UART mode or TCI mode. The continuous 1MHz data output mode is the only synchronous feature currently enabled on the EVM GUI. The EVM is still wired to support the synchronous mode (when TS3L501ERUAR’s SEL pin is logic high via COM_SEL) if you were to write your own code for the EVM’s MSP430 LaunchPad, or use your own MCU. Thus, because of the GUI limitation, I recommend that you use the SPI peripheral of your microcontroller if you were to evaluate the PGA460 onboard the BOOSTXL-PGA460 (via the MOSI_LP, MISO_LP, and SCLK_LP pins).

    Ensure you have set the PGA460 logic level to be compatible with your external MCU’s logic level. By default, the logic level is 3.3V (TEST pin floating or pulled-low). Refer to the datasheet page 51, section 7.3.12 TEST Pin Functionality for details on enabling 5V logic level compatibility (TEST pin pulled-high to 3.3-5V).
  • Thank you Akeem,

    I simply cannot get the PGA460 to respond to synchronous data. I have abandoned that and instead, created a software asynchronous routine for reading and writing to registers. This seems the only way I can talk to the PGA460. Would I have to invert the synchronous data as in asynchronous mode? Also, I am reading the dump data on a register by register basis (using 09h command). Registers 0f7h to 0ffh cannot be read back. Is this normal?

    Regards,

    Alan

  • Hi Akeem,

    I have finally got it working. I assumed that the sync byte was not needed as this is synchronous data and not asynchronous! I just put 0x55 in front and it works fine.

    Regards,
    Alan
  • Hi Akeem,

    Ignore the issue reading locations F7 etc. It was a transmit checksum error.

    Regards,

    Alan

  • Hi Alan,
    I'm glad to hear you were able to get the synchronous mode working. Based on your experience, I will most likely write an application note demonstrating the use of the synchronous UART mode (SPI equivalent) to include examples and common issues/errors.