Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering,...

6
Full Length Article Microcontroller USB interfacing with MATLAB GUI for low cost medical ultrasound scanners Jean Rossario Raj a, *, S.M.K. Rahman a,b , Sneh Anand a,b a Center for Bio-Medical Engineering, Indian Institute of Technology, New Delhi, India b Biomedical Engineering Unit, All India Institute of Medical Sciences, New Delhi, India ARTICLE INFO Article history: Received 13 December 2015 Received in revised form 1 January 2016 Accepted 12 January 2016 Available online 1 February 2016 Keywords: MATLAB MEX program Microcontroller Ultrasound scanner USB USBXpress A B ST R AC T This paper presents an 8051 microcontroller-based control of ultrasound scanner prototype hardware from a host laptop MATLAB GUI. The hardware control of many instruments is carried out by microcontrollers. These microcontrollers are in turn controlled from a GUI residing in a computing machine that is connected over the USB interface. Conventionally such GUIs are developed using ‘C’ language or its variants. But MATLAB GUI is a better tool, when such GUI programs need to do huge image/video pro- cessing. However interfacing MATLAB with the microcontroller is a challenging task. Here, MATLAB interfacing through an intermediate MEX ‘C’ language program is presented. This paper outlines the MEX programming methods for achieving the smooth interfacing of microcontrollers with MATLAB GUI. © 2016, Karabuk University. Publishing services by Elsevier B.V. 1. Introduction Microcontroller-based systems offer major advancement as an internal and external control. Microcontrollers can control major- ity of the internal devices in a typical circuit board. Moreover majority of the chips also have built-in interfaces that can be controlled by the microcontroller. They have USB interface through which it is in- terfaced with external devices such as a computer or a server [1]. A low-cost USB interface for operant research using Arduino and Visual Basic is presented in [2]. Many data acquisition systems use microcontroller and USB interface [3]. The microcontroller pro- gramming is done in traditional ‘C’ language. Microprocessors and microcontrollers provide the path for the integration of hardware and software [4]. Microcontrollers have far-reaching applications in the field of instrumentation [5,6]. The application in the host computer or the server is generally written in languages like ‘C’ or its variants like C++, Visual C++, Java, etc. [7]. The microcontroller manufacturers provide interface pro- grams in the form of windows dynamically linked libraries (DLL), which can be compiled along with the applications for interfacing with the microcontroller [8,9]. For applications involving signal processing, image processing or video processing, MATLAB is a more suitable programming language [10,11]. The quality metrics and visual perception in ultrasound imaging under different imaging conditions using MATLAB test bench were studied in [12]. In MATLAB, there are many built-in functions and routines that enable faster rollout of the application [13]. MATLAB has a very large database of built-in algorithms for mathematical modeling, image processing, simula- tions and computer vision applications [14,15]. MATLAB has the ability to read in a wide variety of both common and domain- specific image formats. However the major challenge is in interfacing the MATLAB ap- plication with the microcontroller to get the best of both worlds. Such requirements involve live reading of images, videos, and direct processing and display [16]. One application where we came across the challenge is while developing a prototype for a medical ultra- sound scanning machine [17,18]. The application was made in MATLAB to take advantage of the rich image and video processing capabilities [10,19]. The hardware has USB interfacing to the microcontroller for configuration of the various parameters of the internal chips and for performing different operations [20–22]. The microcontroller interfaces with different internal chips, such as ADC, transmit side FPGA (TxFPGA), receive side FPGA (RxFPGA), etc. [23,24]. The block schematic of microcontroller interfaces is shown in Fig. 1. The ADC has custom serial bus programming whereas FPGAs used Serial Peripheral Interface (SPI) program- ming. The interface programs toward these devices were also developed for the microcontroller as well as the FPGAs. Neither MATLAB nor the microcontroller manufacturers provide the interface logic for interworking. Hence interworking between * Corresponding author. Tel.: +91 9811084119; fax: +91 1126862037. E-mail address: [email protected] (J.R. Raj). Peer review under responsibility of Karabuk University. http://dx.doi.org/10.1016/j.jestch.2016.01.008 2215-0986/© 2016, Karabuk University. Publishing services by Elsevier B.V. Engineering Science and Technology, an International Journal 19 (2016) 964–969 Contents lists available at ScienceDirect Engineering Science and Technology, an International Journal journal homepage: http://www.elsevier.com/locate/jestch ScienceDirect

Transcript of Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering,...

Page 1: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

Full Length Article

Microcontroller USB interfacing with MATLAB GUI for low costmedical ultrasound scannersJean Rossario Raj a,*, S.M.K. Rahman a,b, Sneh Anand a,b

a Center for Bio-Medical Engineering, Indian Institute of Technology, New Delhi, Indiab Biomedical Engineering Unit, All India Institute of Medical Sciences, New Delhi, India

A R T I C L E I N F O

Article history:Received 13 December 2015Received in revised form1 January 2016Accepted 12 January 2016Available online 1 February 2016

Keywords:MATLABMEX programMicrocontrollerUltrasound scannerUSBUSBXpress

A B S T R A C T

This paper presents an 8051 microcontroller-based control of ultrasound scanner prototype hardwarefrom a host laptop MATLAB GUI. The hardware control of many instruments is carried out bymicrocontrollers. These microcontrollers are in turn controlled from a GUI residing in a computingmachinethat is connected over the USB interface. Conventionally such GUIs are developed using ‘C’ language orits variants. But MATLAB GUI is a better tool, when such GUI programs need to do huge image/video pro-cessing. However interfacing MATLAB with the microcontroller is a challenging task. Here, MATLABinterfacing through an intermediate MEX ‘C’ language program is presented. This paper outlines the MEXprogramming methods for achieving the smooth interfacing of microcontrollers with MATLAB GUI.

© 2016, Karabuk University. Publishing services by Elsevier B.V.

1. Introduction

Microcontroller-based systems offer major advancement as aninternal and external control. Microcontrollers can control major-ity of the internal devices in a typical circuit board. Moreovermajorityof the chips also have built-in interfaces that can be controlled bythe microcontroller. They have USB interface through which it is in-terfaced with external devices such as a computer or a server [1].A low-cost USB interface for operant research using Arduino andVisual Basic is presented in [2]. Many data acquisition systems usemicrocontroller and USB interface [3]. The microcontroller pro-gramming is done in traditional ‘C’ language. Microprocessors andmicrocontrollers provide the path for the integration of hardwareand software [4]. Microcontrollers have far-reaching applicationsin the field of instrumentation [5,6].

The application in the host computer or the server is generallywritten in languages like ‘C’ or its variants like C++, Visual C++, Java,etc. [7]. The microcontroller manufacturers provide interface pro-grams in the form of windows dynamically linked libraries (DLL),which can be compiled along with the applications for interfacingwith the microcontroller [8,9].

For applications involving signal processing, image processingor video processing, MATLAB is a more suitable programming

language [10,11]. The quality metrics and visual perception inultrasound imaging under different imaging conditions usingMATLAB test bench were studied in [12]. In MATLAB, there aremany built-in functions and routines that enable faster rollout ofthe application [13]. MATLAB has a very large database of built-inalgorithms for mathematical modeling, image processing, simula-tions and computer vision applications [14,15]. MATLAB has theability to read in a wide variety of both common and domain-specific image formats.

However the major challenge is in interfacing the MATLAB ap-plication with the microcontroller to get the best of both worlds.Such requirements involve live reading of images, videos, and directprocessing and display [16]. One application where we came acrossthe challenge is while developing a prototype for a medical ultra-sound scanning machine [17,18]. The application was made inMATLAB to take advantage of the rich image and video processingcapabilities [10,19]. The hardware has USB interfacing to themicrocontroller for configuration of the various parameters ofthe internal chips and for performing different operations [20–22].The microcontroller interfaces with different internal chips, suchas ADC, transmit side FPGA (TxFPGA), receive side FPGA (RxFPGA),etc. [23,24]. The block schematic of microcontroller interfaces isshown in Fig. 1. The ADC has custom serial bus programmingwhereas FPGAs used Serial Peripheral Interface (SPI) program-ming. The interface programs toward these devices were alsodeveloped for the microcontroller as well as the FPGAs.

Neither MATLAB nor the microcontroller manufacturers providethe interface logic for interworking. Hence interworking between

* Corresponding author. Tel.: +91 9811084119; fax: +91 1126862037.E-mail address: [email protected] (J.R. Raj).Peer review under responsibility of Karabuk University.

http://dx.doi.org/10.1016/j.jestch.2016.01.0082215-0986/© 2016, Karabuk University. Publishing services by Elsevier B.V.

Engineering Science and Technology, an International Journal 19 (2016) 964–969

Contents lists available at ScienceDirect

Engineering Science and Technology,an International Journal

journal homepage: ht tp : / /www.elsevier.com/ locate / jestch

Press: Karabuk University, Press UnitISSN (Printed) : 1302-0056ISSN (Online) : 2215-0986ISSN (E-Mail) : 1308-2043

Available online at www.sciencedirect.com

ScienceDirect

HOSTED BY

Page 2: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

the MATLAB GUI and the microcontroller is a challenging task. Thenovel method used for interfacing using a C language interface func-tion called MEX program is described in this paper.

2. Materials and methods

2.1. Interfacing architecture

The logical block schematic of the MATLAB GUI andmicrocontroller interfacing with USB is given in Fig. 2, which indi-cates the microcontroller side as well as the MATLAB GUI side logicused for the study. A Silicon Laboratories C8051F340microcontrolleris used. It operates at a maximum speed of 48 MHz with 4 k of on-board RAM (XRAM) and 64 k flash memory. The microcontroller hasintegrated USB receiver and USB controller. It is 48 IO pins config-ured as 5 IO buses of 8 IOs each. The microprocessor in theultrasound scanner prototype interfaces with a bank of ADCs andFPGAs. The microprocessor firmware is written in C language. OneIO Bus is used as the programming header for programming themicrocontroller. The firmware is transferred to the microcontrollerusing the programmer hardware by M/s Silicon Labs. The develop-ment required the USBXpress API provided by M/s Silicon Labs forincluding in the microcontroller firmware, firmware develop-ment, USBXpress driver installation in the host computer, installationof C++ compiler (Visual C++ used), development of the MEX file, de-velopment of the MATLAB GUI, and compilation and linking of theMEX file from MATLAB.

2.2. USBXpress API

The Silicon Laboratories USBXpress provides the host and devicesoftware solution for interfacing communication bridges to the USB.A high-level Application Program Interface (API) for both the hostsoftware and device firmware is used to provide USB connectivity.

The USBXpress includes windows device drivers, device driver in-staller, host interface function library (host API) provided in the formof a DLL, and device firmware interface function library. Some ofthe important functions performed by the host API are given inTable 1. While performing each function, the function returns thestatus of the operation like SI_SUCCESS or SI_DEVICE_NOT_FOUNDor SI_INVALID_PARAMETER, along with any return values to takesuitable corrective steps in read or write logics. The API is used inan interrupt driven mode. The c8051340.h and USB_API.h files sup-plied as part of the application are added to the project in additionto the “main” firmware file. While building the target, the USBXpresslibrary file, USBX_F320_1.LIB is linked as an external object.

2.3. Microcontroller firmware

In the developed prototype, the microcontroller configures thedifferent chips like ADC, FPGA, etc., through the control from theMATLAB GUI. Hence the microcontroller firmware implementsthe USB interface logic as well as the interface logic for the otherdevices. The header and the source files developed for the inter-facing with the ADC, TxFPGA, RxFPGA and PHY device using the fourIO Buses are included in the firmware. Even though the ADC sidedoes not require any separate software logic, the FPGA side re-quires the hardware logic written in languages such as Verilog orVHDL. Similar interface logic is written in the FPGA side also for theread and write operations using the SPI interface. The SPI inter-face has read, write, chip enable, Master in Slave Out (MISO) andMaster Out Slave In (MOSI) pins for the interconnection. TheUSB_API.h includes the definitions needed by common code tocontrol the state of the USB peripheral, but this doesn’t need to knowabout the specific implementation. The USB_API.h for the USB in-terface functions and other files like C8051F340_def.h,compiler_defs.h, stddef.h, stdio.h etc. are included in the compila-tion. The flowchart of the firmware is given in Fig. 3.

Micro controller

USB Interface

Rx FPGA

ADC

SPIInterface

SerialInterface

Tx FPGA

Gigabit Ethernet Phy

Address / Data bus Interface

MDIOInterface

Fig. 1. Block schematic of the experimental setup.

Micro controller Firmware

USBXpress Library (API) supplied by

SiLabs

USBXpress Driver

installed in Laptop

USBXpress DLL supplied

by SiLabs

MEX Program in C (DLL)

MATLAB GUI

USB

Microcontroller Program Laptop Program

Fig. 2. Microcontroller MATLAB interface.

965J.R. Raj et al. / Engineering Science and Technology, an International Journal 19 (2016) 964–969

Page 3: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

2.4. USBXpress DLL

M/s Silicon Labs has provided the USBXpress DLL as ‘SiUSBXp.dll’.This acts as the interface between the USBXpress driver in the hostcomputer and the MEX file. The important functions supported bythe DLL are given in Table 2. The user initiates communication withthe target USB device(s) by making a call to SI_GetNumDevices. Thiswill return the number of target devices. This number is used whencalling SI_GetProductString to build a list of device serial numbersor product description strings. To access a device, it is opened by acall to SI_Open using an index determined from the call toSI_GetNumDevices. The SI_Open function will return a handle tothe device that is used in all subsequent accesses. Data I/O is per-formed using the SI_Write and SI_Read functions. When I/Ooperations are complete, the device is closed by a call to SI_Close.

These functions are called for reading and writing data to the USBinterface from the MEX program file.

2.5. MEX interface

The core of the work is in the development of a MEX (MATLABexecutable) file in C language whose functions are called fromMATLAB. Also the MEX integrates the USBXpress DLL for connec-tivity with themicrocontroller. Thus theMEX file acts as the interfacebetween the MATLAB and the microcontroller. The MEX header filecontains the function declarations. The MEX C++ file includes the‘SiUSBXp.h’ file for the MEX file, which in-turn calls the functionsof the ‘SiUSBXp.dll’. The flowchart of a function for reading theTxFPGA parameters is given in Fig. 4.

Table 1USB API device interface functions.

Function name Function

USB_Clock_Start Initializes the USB clockUSB_Init Enables the USB interfaceBlock_Write Writes a buffer of data to the host via USBBlock_Read Reads a buffer of data from the host via USBUSB_Int_Enable Enables API interruptsUSB_Disable Disables USB interfaceUSB_Suspend Suspends the USB interface

Start

Stop

USB_Clock_StartUSB_Init

Port InitialisationTimer Initialisation

Initial Configuration of Interfaces and Devices

Wait for Interrupt

Interrupt Type

Device Suspend

USBXpress

Block Read

Case 1 Write to TxFPGA

Case 2 Write to RxFPGA

Case 3 Write to ADC

Case 4 Write to PHY

Case 5 Read from TxFPGA

Case 6 Read from RxFPGA

Case 7 Read from ADC

Case 8 Read from PHY

Block Write

F

T

F

F

F

T

T

T

T

T

T

T

F

F

F

F

Fig. 3. Flowchart of microcontroller firmware.

Table 2USB DLL interface functions.

Function name Function

SI_GetNumDevices Returns the number of devices connectedSI_GetProductString Returns a descriptor for a deviceSI_Open Opens a device and returns a handleSI_Close Cancels pending IO and closes the deviceSI_Read Reads a block of data from the deviceSI_Write Writes a block of data to the deviceSI_SetTimeouts Sets read and write block timeoutSI_CheckRXQueue Gets the number of bytes in the device Rx Queue

966 J.R. Raj et al. / Engineering Science and Technology, an International Journal 19 (2016) 964–969

Page 4: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

Similarly the other required functions are also built in the MEXfile. The required Silicon Laboratories library files SiUSBXp.dll,SiUSBXp.h, SiUSBXp.lib and SiUSBXp.exp are placed in the sameproject folder. The MEX file is compiled into a DLL by using MATLABlinked Visual C++ compiler. The MEX file can be compiled directlyfrom the project using the Visual C++ application also. The DLLcreated in this case is with name ‘USConfig.dll’. The library file‘USConfig.lib’ containing all the function names is also placed in thesame folder of the project.

The MATLAB program directly calls the MEX functions from theMATLAB file or command prompt using ‘loadlibrary’ and ‘calllib’ func-tions of MATLAB. These functions are suitably included as part ofthe MATLAB GUI code wherever required.

USBXpress comes with its own driver that needs to be in-stalled on the host computer. Once the driver is installed, the hostcomputer automatically recognizes the microprocessor when it isplugged in.

3. Results

A prototype developed for the ultrasound scanner with USB in-terface toward the MATLAB GUI is shown in Fig. 5. The prototypehas the Silicon Laboratories C8051F340microcontroller, Xilinx FPGAsand ADCs (AD9272) from Analog Devices. It has the microcontrollerprogramming header as well as the USB interface. The different com-ponents above in the hardware are marked in Fig. 5.

The MATLAB GUI is shown in Fig. 6. The various ADC, FPGA, PHY,etc. configurations are performed from this GUI using the buttonclick functions of the GUI buttons. These functions in turn call theMEX interface functions and pass the required values toward the

microcontroller interface. The AD9272 configurations include theLAN Gain, VGA Gain, AAF upper and lower cutoff frequencies,enabling/disabling of different test patterns, etc. The enabling of dif-ferent ultrasound channels are performed by configuring the pulsersthrough the TxFPGA by way of microcontroller. All these configu-ration parameters are coded as binary values and passed to themicrocontroller. The various register values in these devices for theirindividual configuration are also read and written through thisinterface.

Finally the start and stop of ultrasound scan with the proto-type is also controlled through themicrocontrollers by configurationof the FPGAs in transmit and receive directions. For phantom testing,an Agar–Agar phantom was prepared. The ultrasound scan imageis taken using a phantom with an inclusion as shown in Fig. 7. Theimage is taken using a linear array transducer probe at 4 MHz. Thereceive beamforming, image and video processing algorithms likesmoothening, sharpening, histogram equalization etc. are per-formed in MATLAB. The receive beamforming involved delay andsum algorithm of the simultaneously received channels. The posi-tion of the inclusion as well as the depth of the phantom is markedin Fig. 7.

4. Conclusion and discussion

The MATLAB interfacing with microcontroller is a major break-through in the design of the ultrasound machine. This enabledvarious signal, image and video processing requirements to be easilycarried out using the MATLAB built-in functions [13]. The raw datacaptured were digitized and sent to MATLAB for further process-ing. Thus many of the hardware processing were transferred tosoftware algorithms in MATLAB, like the beamforming, etc., in hostcomputer, thus reducing the size and complexity of the hardware.The software processing of Doppler ultrasound system with USB-based high data rate communication is presented [21], where thedigital signal processing is shifted from hardware to software al-gorithms. This also helped in the development of an ultrasoundmachine suited for tele-medicine applications [23].

This interfacing has larger implications in other wide areas ofmicrocontroller control and programming, and hence is a very in-novative approach. This also has many applications in areas ofsensors, including medical electronics. There are large numbers ofimplementations of microcontroller interfacing with native ‘C’ or

SI_GetNumDevices

SI_GetProductString

SI_SetTimeouts

SI_Open

Case Success Return Error

Case Success Return Error

Case Success Return Error

Case Success Return Error

F

F

F

F

SI_Write

SI_CheckRXQueue

Bytes in Queue

SI_Read

SI_Close

Case Success Return Error

< 1

Case Success Return Error

F

F

Case Success Return ErrorF

Return Data

T

T

T

T

T

T

T

T

T

Fig. 4. MEX function flowchart for reading a register value.

Tx FPGA

Rx FPGA

Microcontroller

Receiver & ADC

Ethernet MAC

Ethernet PHY

Fig. 5. Ultrasound scanner prototype hardware.

967J.R. Raj et al. / Engineering Science and Technology, an International Journal 19 (2016) 964–969

Page 5: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

Java applications. However there are no such implementations avail-able for the interfacing of the microcontroller with MATLAB.

In this application, the data received from the ultrasound trans-ducers are captured as Ethernet packets through the Ethernetinterface. As a future step, capturing the packets through the USBinterface can also be implemented.

Acknowledgments

The authors thank the Department of Science and Technology,Government of India for providing financial support for this projectwith Grant Number SR/WOS-A/ET-24/2008. The authors also statethat the sponsor does not have any role in study design; collec-tion, analysis and interpretation of data; writing of the report; andin the decision to submit the article for publication.

References

[1] C.-H. Huang, M.-F. Chiu, J.-F. Chou, USB interface data transmission device andUSB interface data communication system. Google patents, 2012.

[2] R. Escobar, C.A. Pérez-Herrera, Low-cost USB interface for operant research usingArduino and Visual Basic, J. Exp. Anal. Behav. 103 (2015) 427–435, doi:10.1002/jeab.135.

[3] A. Bora, K.C. Sarma, Design of a USB based multichannel, low cost dataacquisition system using PIC microcontroller, Int. J. Comput. Appl. 59 (2012)5–8.

[4] A. Al-Dhaher, Integrating hardware and software for the development ofmicrocontroller-based systems, Microprocess. Microsyst. 25 (2001) 317–328,doi:10.1016/S0141-9331(01)00124-7.

[5] V. Kaundal, A.K. Mondal, P. Sharma, K. Bansal, Tracing of shading effect onunderachieving SPV cell of an SPV grid using wireless sensor network, Eng. Sci.Technol. (2015) doi:10.1016/j.jestch.2015.03.008.

[6] B. Mondal, M. Meetei, J. Das, C.R. Chaudhuri, H. Saha, Quantitative recognitionof flammable and toxic gases with artificial neural network using metal oxidegas sensors in embedded platform, Eng. Sci. Technol. 18 (2015) 229–234,doi:10.1016/j.jestch.2014.12.010.

[7] D.T. Martinez, T.U. Ganiron Jr., C.S. Lacsamana, Development ofhardware interfacing system for Visual C++, Int. J. Adv. Appl. Sci. 2 (2013)201–204.

[8] T. DeBoer, P. Carbone, J. Waldman, D. Johnson, R. Dautel, System and methodfor communicating with a microcontroller. Google patents, 2013.

[9] P.C. Pradhan, R.K. Sahu, S. Panda, Firefly algorithm optimized fuzzy PID controllerfor AGC of multi-area multi-source power systems with UPFC and SMES, Eng.Sci. Technol. (2015) doi:10.1016/j.jestch.2015.08.007.

[10] J. Ferrer-Buedo, M. Martínez-Sober, Y. Alakhdar-Mohmara, E. Soria-Olivas, J.C.Benítez-Martínez, J.M. Martínez-Martínez, Matlab-based interface for thesimultaneous acquisition of force measures and Doppler ultrasound muscularimages, Comput. Methods Programs Biomed. 110 (2013) 76–81, doi:10.1016/j.cmpb.2012.09.009.

[11] R. Gupta, J. Bera, M. Mitra, Development of an embedded system and MATLAB-based GUI for online acquisition and analysis of ECG signal, Measurement 43(2010) 1119–1126, doi:10.1016/j.measurement.2010.05.003.

[12] X. Zhao, J. Zhou,W.-F. Loke, M. Chirala, C. Zhang, Quality evaluation of ultrasoundimaging using a MATLAB test-bench, in: SPIE Medical Imaging, InternationalSociety for Optics and Photonics, 2013, p. 867516.

[13] J. Blahuta, T. Soukup, P. Cermák, D. Novák, M. Vecerek, Semi-automaticultrasound medical image recognition for diseases classification in neurology,in: Advances in Intelligent Analysis of Medical Data and Decision SupportSystems, Springer, 2013, pp. 125–133.

ADC configurationPulser channel enabling

Read or Write Configuration Register Values

Fig. 6. MATLAB GUI for configuration of various scanner parameters.

Reflection byinclusion

Reflection from bottom surface Phantom with inclusion

Fig. 7. Ultrasound image of a phantom with inclusion captured in the prototype.

968 J.R. Raj et al. / Engineering Science and Technology, an International Journal 19 (2016) 964–969

Page 6: Microcontroller USB interfacing with MATLAB GUI for low ... · aCenter for Bio-Medical Engineering, ... Microcontroller-basedsystemsoffermajoradvancementasan ... The application was

[14] N. Sandeep, C. Sulochana, Dual solutions for unsteady mixed convection flowof MHD micropolar fluid over a stretching/shrinking sheet with non-uniformheat source/sink, Eng. Sci. Technol. 18 (2015) 738–745, doi:10.1016/j.jestch.2015.05.006.

[15] S. Padmanaban, E. Kabalci, A. Iqbal, H. Abu-Rub, O. Ojo, Control strategy andhardware implementation for DC–DC boost power circuit based onproportional–integral compensator for high voltage application, Eng. Sci.Technol. 18 (2015) 163–170, doi:10.1016/j.jestch.2014.11.005.

[16] J.J.R. Raj, S. Rahman, S. Anand, Application of a novel software algorithm forinformation reduction in high frame rate ultrasonography, Int. J. Comput. Appl.Technol. Res. 3 (2014) 729–733, doi:10.7753/ijcatr0311.1016.

[17] J.J.R. Raj, S. Rahman, S. Anand, Acquisition of lossless data in transient windowthrough ethernet in high frame rate machines, in: 2015 2nd InternationalConference on Computing for Sustainable Global Development (INDIACom),IEEE, New Delhi, 2015, pp. 591–596.

[18] M. Tiouririne, S. Nguyen, J.A. Hossack, K. Owen, F. WilliamMauldin Jr., Handheldreal-time volumetric imaging of the spine: technology development, J. Med.Eng. Technol. 38 (2014) 100–103, doi:10.3109/03091902.2013.877989.

[19] J.J.R. Raj, S. Rahman, A. Sneh, Electronic hardware design for ultrasound transientelastography, Int. J. Eng. Sci. Technol. 4 (2012) 3700–3704.

[20] D. Jones, Smartphone-compatible ultrasound probe, J. Diagn. Med. Sonogr. 30(2014) 200–204, doi:10.1177/8756479314534523.

[21] B.-E. Byambasuren, M. Oyun-Erdene, S.-Y. Nam, D.-H. Kim, S.-M. Han, Designof USB-based high rate data communication for transcranial Doppler ultrasoundsystem, Int. J. Control Autom. 5 (2012) 97–106.

[22] Y.-S. Lee, J.-H. Yang, S.-Y. Kim, W.-S. Kim, O.-K. Kwon, Development of a rapidcontrol prototyping system based onMatlab and USB DAQ boards, J. Inst. ControlRobot. Syst. 18 (2012) 912–920, doi:10.5302/j.icros.2012.18.10.912.

[23] N. Li, J. Guo, H.S. Nie, W. Yi, H.J. Liu, H. Xu, Design of embedded bio-impedanceanalyzer based on digital auto balancing bridge method, in: Applied Mechanicsand Materials, Trans Tech Publication Ltd, 2012, pp. 396–401.

[24] J. Raj, S. Rahman, S. Anand, Interfacing high frame rate data through ethernetwithout loss for tele-medical applications, in: 2015 International Conferenceon Signal Processing and Communication (ICSC), IEEE, 2015, pp. 51–55.

969J.R. Raj et al. / Engineering Science and Technology, an International Journal 19 (2016) 964–969