BRC Technical capabilities
At the BRC, we find that our research often requires instrumentation that is not readily available for purchase from commercial companies. For this reason, we have our own instrument development capabilities. Typically, an instrument is comprised of mechanical parts, electronics for control and measuring, some kind of user interface and a means for storing data. We are increasingly utilizing embedded technologies such as Field Programmable Gate Arrays (FPGA) and microcontrollers. Our license for Altium Designer 6 allows us to generate schematics and design our own printed circuit boards. An extensive library of logic functions and processor cores is available to quickly deploy FPGA designs. A C compiler is also included for generation of code for designs with processor cores. Winarm, which is a GCC GNU C compiler, is used for programming ARM microcontrollers. The NXP LPC2148 is an arm 7 processor, which we are now using for new designs. We have been using Microchip PIC microcontrollers in the lab for several years now and there are several PIC controlled devices still in service, many utilizing the USB2 capability offered by the PIC18f4550. For PC programming, we maintain a MSDN subscription and use Microsoft's visual studio . And yes-- there are no Macs here.
Examples of some BRC designs are shown below. The first demonstrates the use of a Xilinx Spartan-3A FPGA to construct a 4-phase oscillator for Dielectrophoresis. Click on any image for a full resolution PDF. The top sheet shows sub sheets as the green boxes. Sub sheets are graphically represented as components. the sub sheet components can be replicated if needed. The Brown box in the center of the schematic is a TSK51A processor core. The TSK51A is an 8-bit core, compatible with the 80C31. From the Altium library is also placed a ROM component and a RAM component, both also in brown.
Sub sheet 1, The DDS block
The DDS Block generates the time base frequency from the FPGA's clock signal.
Sub Sheet 2 contains the waveform RAM. An arbitrary waveform can be loaded from a computer through a RS232 port. Or, a predefined waveform can be generated by the TSK51A Firmware.
Sub Sheet 3 contains the logic for a Pulse Width Modulator (PWM). In the analog amplifier, the PWM is filtered to make a DC level that is used to control the gain of the amplifier.
The instrument can be used in stand-alone mode, having an LCD and four buttons for the user interface, or it can be connected to a computer and operated either by menu from HyperTerminal or through a GUI, written with Microsoft's Visual Studio. When used for Dielectrophoresis the instrument produces 4 sine waves, phased 90 degrees apart. The frequency can range from DC to 20MHz. The voltage can range from a few mV to 40 volts pp.
Below are a few sheets from an FPGA-based motion system having optical encoder position feedback. The system can interface to a PC's parallel port, or be controlled via Ethernet and internet.
.
Top Level Schematic DAC Block
