Simulink® Reference Application Examples for Embedded Coder® Texas Instruments (TI) C2000™ Support Package This repository will host Simulink reference application examples using Embedded Coder TI C2000 Support Package. The following examples are provided:Interface BiSS-C Absolute Encoder using the TI Position Manager board from Simulink for F28379D Launchpad.CAN Multiple ID Transmit Receive Support using Embedded Coder TI C2000 Support Package for F28379D Launchpad and F280049C Launchpad.FLASH EEPROM Emulation from Simulink using Embedded Coder TI C2000 Support Package for F28379D Launchpad.3.a New updates to ensure Flash sector for calibration is erased only after 'm' Banks each having 'n' Pages are updated with the calibration data.'m' and 'n' can be defined to any length of the Flash sector. The current page holds the last updated calibration data.MathWorks Products (https://www.mathworks.com)Requires MATLAB® release R2020b or newer, Simulink and Embedded Coder.Community SupportMATLAB CentralMATLAB File ExchangeCopyright 2021 The MathWorks, Inc.
NOTE: This support package is no longer supported by MathWorks. It is recommended that you use C2000 Microcontroller Blockset which includes the support for latest Texas Instruments™ C2000™ Microcontrollers with Connected IO Capabilities. SoC Blockset™ Support Package for TI C2000 Microcontrollers enables you to design, analyze, and prototype embedded software architectures on TI C2000 boards. Using this support package along with Embedded Coder®, you can build, load and execute models on TI C2000 development boards. This enables you to verify your algorithms on real hardware and perform measurements with real-time monitoring and visualization. SoC Blockset supports execution on TI C2000 devices, with predefined support for the C2000 Delfino MCU F28379D LaunchPad™ development kit.
NOTE: This support package is no longer supported by MathWorks. It is recommended that you use C2000 Microcontroller Blockset which includes the support for latest Texas Instruments™ C2000™ Microcontrollers with Connected IO Capabilities. Embedded Coder® Support Package for Texas Instruments C2000™ Processors enables you to run Simulink® models on TI C2000 MCUs. Embedded Coder automatically generates C code for your algorithms and device driver blocks that can run directly on the target hardware. This support package can be used for rapid prototyping and production workflows for different control applications including motor control and power conversion.ContentsGenerate code and deploy to your TI C2000 hardware from Simulink modelDevice driver blocks for ADC, PWM, SPI, I2C, serial, SDFM, CAN, Hardware Interrupts, eCAP, QEP, Comparator, DAC etc.Support for multi-core processorsSupport for Control Law Accelerator (CLA) Verification capabilities with Processor in Loop (PIL), Monitor and Tune (External Mode), SD Card Logging and Real-time profilingCode replacement library for IQMath Motor Control and Power Conversion application examplesDocumentationHomeSetup and ConfigurationSupported Texas Instruments C2000 ProcessorsBlocksExamplesRelease NotesMore ExamplesIn addition to the examples provided as part of the support package, here are some useful application examples:Simulink Reference Application Examples for TI C2000Motor Control Blockset ExamplesRemote Control Racecar using Simulink and Texas Instruments C2000SupportFrequently asked questions (FAQs): https://www.mathworks.com/matlabcentral/answers/674053-faq-support-for-using-mathworks-solutions-with-ti-c2000 If you have download or installation issues, please contact Technical Support: www.mathworks.com/contact_us Videos and WebinarsTI C2000 for Digital Power Applications: https://www.youtube.com/watch?v=CstjgrGR7dY Programming TI C2000 LaunchPad with Simulink: https://www.youtube.com/watch?v=wxYTLbYfBP0 Using a TI F28069 LaunchPad with Simulink: https://www.youtube.com/watch?v=ncM7N-hLKQM Motor Control Blockset VideosDesigning the MPPT Algorithm (Solar Inverter Control) and Generating Production Code for the TI C2000 MicrocontrollerMotor Control with Embedded Coder and TI’s C2000User StoriesMurata Manufacturing Reduces Development Time for Energy Management System Control Software by More Than 50% with Model-Based DesignVONSCH Speeds the Development of Control Systems for Solar Inverters and Battery ChargersATB Technologies Cuts Electric Motor Controller Development Time by 50% Using Code Generation for TI’s C2000 MCU Fujitsu Lab establishes model-based development flow for digital power supply for servers, reducing development man-hours to 1/3
1.SPWM / single phase /full bridge(4 pluse) / repetitve controller /2.I have check the model at small power level! But I still advise if you'd better no using this model befor you totally understand it...3.THis is just for learning, if you want to tied grid by a transformer(220VAC-220VAC), please check the model at small power level first.4.there is no protect program in this project!!!!!
This example shows how to design a DC/DC Buck Converter controller with the Embedded Coder Support Package for TI® C2000 Processors and run it on the TI® F28377S Launchpad (LAUNCHXL-F28377S) connected to the C2000 DPS BoosterPack (BOOSTXL-BUCKCONV). You can monitor signal and tune parameters using the provided host model running on your host computer.https://www.youtube.com/watch?v=CstjgrGR7dY
This example shows how to use a closed-loop Field-Oriented Control (FOC) algorithm to regulate the speed and torque of a three-phase Permanent Magnet Synchronous Motor (PMSM). This example uses C28x peripheral blocks and C28x DMC library blocks from the Embedded Coder Support Package for Texas Instruments C2000 Processors.For newer versions and other hardware setup, check the shipping version of this example on this page: https://www.mathworks.com/help/ti-c2000/ug/sensorless-foc-example.htmlRequired Hardware:- TI F28027 LaunchPad- BOOSTXL-DRV8301 with a 3-phase brushless motor and a 12-24V power supply.More information on how the models have been created and how to use them in the following video:http://youtu.be/wxYTLbYfBP0
This submission contains Simulink® models developed for a Texas Instruments C2000 based remote control racecar platform that provides a great introduction to Simulink hardware programming. The models demonstrate the usage of closed-loop traction control and open-loop torque vectoring algorithms to control the vehicle’s dynamics as well as CAN communication to transmit sensor data and receive commands and controller parameters. The demonstration also features a Simulink host application that uses Vehicle Network Toolbox™ hardware support to interact with the vehicle in real-time through the CAN network. Additional details on how the hardware was integrated for this demonstration can be found in the submissions pdf file.
Please always check NIfTI_tools.pdf for detail descriptions and latest updates.If you are confused by the Left / Right of an ANALYZE image, please read UseANALYZE.pdf.You may also want to go through FAQ.pdf for practical solutions and real examples.Basic Programs:1. load_untouch_header_only.m: Load only the header section of NIfTI or ANALYZE file. The input file will be automatically detected. NIfTI structure will be returned for NIfTI file, and ANALYZE structure will be returned for ANALYZE file.2. load_nii.m: Load N-Dimensional NIfTI file (where N can be from 3 to 7) or ANALYZE file (where N can be from 3 to 4), and apply header info (e.g. affine geometric transform, voxel intensity scaling, etc.) to the data. If your file has more than 3-Dimension (e.g. time series etc.), you can also specify a range to extract only 1 or several volumes.3. save_nii.m: Save N-Dimensional NIfTI structure (where N can be from 3 to 7) that is loaded by "load_nii.m" or made by "make_nii.m" into a NIfTI file.4. make_nii.m: Make N-Dimensional NIfTI structure (where N can be from 3 to 7) based on the N-Dimensional matrix and other optional parameters (e.g. voxel_size, origin, etc.). Using "save_nii" command, the NIfTI structure that is made by "make_nii" can be saved into a NIfTI file.5. make_ana.m: Make 3D ANALYZE structure based on the 3D matrix and other optional parameters (e.g. voxel_size, origin, etc.). Using "save_untouch_nii" command, the ANALYZE structure that is made by "make_ana" can be saved into an ANALYZE file in order to be compatible with some ANALYZE only programs.6. reslice_nii.m: Re-sample 3D (or 4D) NIfTI file, or ANALYZE file with affine matrix M in .mat file, and save the re-sampled data into a new NIfTI file. The program will base on the affine matrix, which is especially useful for oblique images with non-orthogonal rotation or shearing that cannot be loaded with "load_nii.m". You can also specify voxel_size, etc. It will not cause negative effect, as long as you remember not to do slice time correction after using "reslice_nii.m".7. pad_nii.m: Pad the volume(s) in NIfTI structure from any of the six sides, while keeping the originator, voxel size, data type, and description unchanged. The program is especially useful after you use reslice_nii, since the new volume will most likely have different dimensions.8. clip_nii.m: Clip the volume(s) in NIfTI structure from any of the six sides, while keeping the originator, voxel size, data type, and description unchanged. The program is especially useful after you use reslice_nii, since the new volume will most likely have different dimensions.9. view_nii.m: View & Edit 3D (or 4D) NIfTI or ANALYZE structure that is loaded by "load_nii.m" or made by "make_nii.m". Activation map, ROI, etc. can be overlaid on top of a background image (see above picture). Plotted view can be embedded into your existing figure window. If you use it as an individual program, it can also edit the orientation and voxel value of the image, view volume histogram, and save the modified image.10. load_untouch_nii.m: Load N-Dimensional NIfTI file (where N can be from 3 to 7) or ANALYZE file (where N can be from 3 to 4), but do not apply any changes that are indicated in the header. WARNING: Do not use "view_nii.m" to view the structure that is loaded by "load_untouch_nii.m".11. save_untouch_nii.m: Save N-Dimensional NIfTI structure (where N can be from 3 to 7) or ANALYZE structure (where N can be from 3 to 4) that is loaded by "load_untouch_nii.m" or made by "make_ana.m" into a new NIfTI or ANALYZE file. If you do not modify the loaded dataset, the header and data in the new saved file should be the same as those in the original file.Other Programs:1. collapse_nii_scan.m: Integrate multiple single-scan NIfTI or ANALYZE files into a multiple-scan NIfTI file.2. expand_nii_scan.m: Break a multiple-scan NIfTI file into multiple single-scan NIfTI files.3. save_untouch_slice.m: Save back to the original image with a portion of slices that was loaded by load_untouch_nii. You can process those slices matrix in any way, as long as their dimension is not altered.4. get_nii_frame.m: Return the number of time frames of a NIfTI file.5. flip_lr.m: Flip NIfTI or ANALYZE file Left-Right along the plane across the originator, and save the L-R flipped data into a NIfTI file. WARNING: Please use this program with caution, although you can always flip it back.6. load_nii_ext.m: Load header extension from a NIfTI file.7. mat_into_hdr.m: Integrate affine matrix in old SPM .mat file into its .hdr header file. Thus, the ANALYZE file is converted into a NIfTI file with the updated .hdr header file.
This example shows how to use a closed-loop Field-Oriented Control (FOC) algorithm to regulate the speed and torque of a 2 three-phase Permanent Magnet Synchronous Motors (PMSM). This example uses C28x peripheral blocks and C28x DMC library blocks from the Embedded Coder Support Package for Texas Instruments C2000 Processors.For newer versions and other hardware setup, check the shipping version of this example on this page: https://www.mathworks.com/help/ti-c2000/ug/dual-motor-dyno-example.htmlRequired Hardware: - TI LAUNCHXL-F28069M LaunchPad (http://www.ti.com/tool/LAUNCHXL-F28069M)- 2 BOOSTXL-DRV8301 with a 3-phase brushless motor and a 12-24V power supply (http://www.ti.com/tool/BOOSTXL-DRV8301)- 2 PMSM (i.e. 2MTR-DYNO setup http://www.ti.com/tool/2mtr-dyno)More information on how the models have been created and how to use them in the following video: http://youtu.be/ncM7N-hLKQM
This model enables the code generation for texas instruments C2000 microcontroller using simulink blocks. This is tested file for speed control of induction motor using TMS320F28027 microcontroller.
Running External Mode is useful for many reasons, however, it is problematic with the continuous change of Matlab versions. in this contribution, a simple model that blinks a led on the Delfino control card using a varibale frequency variable duty PWM signal is presented. The file can be used as a template to more complex models to get straigt forward and problem free External mode simulation for the mentioned Matlab version. The pre requisit of course is to properly install the Matlab support package for TI C2000 controllers. The mode is accompanied by a text file showing the most critical and questionable pieces of information in the establishment of communication between the host and the card. Hopefully, it can help
NOTE: This support package is no longer supported by MathWorks. It is recommended that you use C2000 Microcontroller Blockset which includes the support for Texas Instruments™ C2000™ F28M3x Concerto™ ProcessorsEmbedded Coder® Support Package for Texas Instruments™ C2000™ F28M3x Concerto™ Processors enables you to create and run Simulink® models on Texas Instruments C28x and ARM® Cortex®-M3 MCUs. The support package includes a library of Simulink blocks for configuring and accessing F28M3x peripherals and for communication interfaces.This support package is functional for R2014b and beyond.If you have download or installation issues, please contact Technical Support: www.mathworks.com/contact_ts
This model is simulated in external mode for TMS320F28027F Microcontroller(μC).From this model code is generated and employ on μC after build the model.On run time speed of Induction motor can be vary in forward as well as reverse direction. Model is developed for open loop control.
Simulink (Embedded Coder) Target for TI LaunchPadSummary:TI LaunchPad (http://ti.com/launchpad) is an easy-to-use, affordable (< 5 USD),and scalable introduction to the world of microcontrollers and the MSP430 family.Simulink (http://www.mathworks.com/products/simulink) is a leading environmentfor multidomain simulation and Model-Based Design.Embedded Coder (http://www.mathworks.com/products/embedded-coder) allows you togenerate C code and deploy your algorithms to target hardware.Installation:1) Windows/Linux: Have Code Composer Studio 5 installed (http://processors.wiki.ti.com/index.php/Download_CCS).Note: Currently Code Composer Studio 5 for Linux doesn't support LaunchPadconnection/debugging. Therefore, you will also need mspdebug (http://mspdebug.sourceforge.net/) on Linux todownload/debug after compiling with CCSv5 toolchain.On Linux, you can use mspgcc toolchain instead of CCSv5. This package supportsboth mspgcc and CCSv5 on Linux.Make sure your toolchain is working (build and download some test project, check connection)before you proceed!2) a) Extract this package somewhere. Make sure there are no spaces/non-ascii characters in path (just in case). b) Make sure you have a working/supported host compiler (http://www.mathworks.com/support/compilers/R2012b/index.html) by running 'mex -setup' in MATLAB. c) Within MATLAB, 'cd' to the directory containing launchpad_setup.m and run this script. d) Swap TX/RX jumpers on TI LaunchPad (see the group of 5 jumpers on your board). This package uses HW UART (see inscription on the board). If you don't do this, Serial Read/Write blocks and PIL will not work.3) You should be good to go.What this package already has:- Standalone execution on target (driven by ISR)- Support for MSP430G2553 only- Simulink library blocks for: * Serial read/write (hardware UART - you must swap TX/RX jumpers on your LaunchPad) * LED * Built-in temperature sensor * Push button- Execution in PIL mode (hardware UART - you must swap TX/RX jumpers on your LaunchPad)- PIL mode profilingWhat this package would like to have:- More Simulink blocks- Support for other LaunchPad compatible MCUs- More documentation
DICOM to NIfTI conversion, DICOM and NIfTI tools, NIfTI visualization (version 2024.03.23)dicm2niiConvert DICOM into NIfTI. It can also convert PAR/XML/REC, HEAD/BRIK, MGZ and BrainVoyager files into NIfTI.nii_toolCreate, load, save NIfTI file. Support both version 1 and 2 NIfTI, and variety of data type.nii_viewerVisualize NIfTI. Can also visualize any file convertible to NIfTI by dicm2nii.nii_coregAffine registration of images with the same modality.nii_defaceRemoves face and neck structure from T1w/T2w NIfTI.nii_mocoPerform motion correction on a NIfTI.nii_stcPerform slice timing correction on a NIfTI.nii_xformTransform a NIfTI into different resolution, or into a template space.dicm_hdr, dicm_img, dicm_dict, dicm_save, dicm_val_repRead/write DICOM header and image, independent of Matlab Image Processing Toolbox.rename_dicm, sort_dicm, anonymize_dicmDICOM tools performing the tasks as indicated by the name.RT_mocoReal time motion/image monitor and more for Siemens scanner.
MathWorks and Texas Instruments engineers demonstrate a new workflow for generating TI Hercules MCU optimized code from Simulink.This target includes Texas Instruments of Processor-in-the-Loop (PIL) testing with Simulink and TI Hercules MCUs for RM48. To get started, follow step by step instructions in Help browser-->Supplemental Software-->TI Hercules RM48 Target-->Getting Started Guide
Embedded Coder® Support Package for ARM® Cortex®-M Processors lets you generate optimized code for math operations using the CMSIS library. Use this generated code for ARM Cortex-M processors. For DSP filter support, use ARM Cortex-M CMSIS Library Support from DSP System Toolbox™.This support package is functional for R2013b and beyond.If you have download or installation issues, please contact Technical Support: www.mathworks.com/contact_tsNote for Linux users:This support package downloads and uses the GNU Tools for ARM Processors third-party application. This 32-bit embedded application requires the libc6-i386 package to run on a 64-bit Linux platform. Without the libc6-i386 package, compilation of MathWorks generated code fails. To install the libc6-i386 package on Ubuntu and Debian, type this example command in the Linux terminal: sudo apt-get install libc6:i386MATLAB R2018b and later versions are unaffected.
This function ReadData3D allows the user to open medical 3D files. It supports the following formats : Dicom Files ( .dcm , .dicom ) V3D Philips Scanner ( .v3d ) GIPL Guys Image Processing Lab ( .gipl ) HDR/IMG Analyze ( .hdr ) ISI Files ( .isi ) NifTi ( .nii ) RAW files ( .raw , .* ) VMP BrainVoyager ( .vmp ) XIF HDllab/ATL ultrasound ( .xif ) VTK Visualization Toolkit ( .vtk ) Insight Meta-Image ( .mha, .mhd ) Micro CT ( .vff ) PAR/REC Philips ( .par, .rec) usage: [V,info]=ReadData3D; or, [V,info]=ReadData3D(filename); outputs, V : The 3D Volume info : Struct with info about the data Always the following fields are present info.Filename : Name of file info.Dimensions : Dimensions of Volume info.PixelDimensions : Size of one pixel / voxel Warning! The read functions are not fully implemented as defined in the file-format standards. Do not use this function for critical applications. Question,If you know an example file of GE_Version_4, GE_Version_5 or some other often used 3D medical format, please leave a comment (so I can implement that format).
Simulink (Embedded Coder) Target for TI Stellaris LaunchPadSummary:TI Stellaris LaunchPad (http://www.ti.com/stellaris-launchpad-b) is a low-cost development board based on ARM Cortex-M4F.Simulink (http://www.mathworks.com/products/simulink) is a leading environment for multidomain simulation and Model-Based Design.Embedded Coder (http://www.mathworks.com/products/embedded-coder) allows you to generate C code and deploy your algorithms to target hardware.Please refer to this repository: https://github.com/kyak/stellaris_ert for the latest development version. Your input and feedback is highly appreciated!Installation:1) Windows/Linux: Have Code Composer Studio 5.3 (or above) installed (http://processors.wiki.ti.com/index.php/Download_CCS).2) Windows/Linux: Have StellarisWare installed (http://www.ti.com/tool/SW-EK-LM4F120XL). You don't have to download the complete StellarisWare package. "StellarisWare for the Stellaris LM4F120 LaunchPad Evaluation Board" is enough.Make sure your toolchain is working (build and download some test project, check connection) before you proceed!3) Make sure you have a working/supported host compiler (http://www.mathworks.com/support/compilers/R2014a/index.html) by running mex -setupin MATLAB.4) Extract this package somewhere. Make sure there are no spaces/non-ASCII characters in path (just in case).5) Within MATLAB, 'cd' to the directory containing stellaris_setup.m and run this script.You should be good to go.What this package already has: Standalone execution on target (driven by ISR) Execution in PIL mode PIL mode profiling Simulink library blocks for: * GPIO * Push Buttons * UART Read/Write * Built-in temperature sensor * Generic ADCWhat this package would like to have: Simulink library blocks for: * PWM, Interrupts, uDMA... * Timers More documentation External Mode support
This set of models elaborates a simple "system level" descrition of a GPS receiver channel all the way to operating hardware. Real world captured GPS signals are used to test the initial receiver design. Ultimatly, the design is elaborated to the point of being deployed on a Xilinx FPGA and TI DSP. NOTE: You do not have to have the tools to do this to use most of the models.
Introduction to Microcontroller Programming for Power Electronics Control ApplicationsThis repository contains the MATLAB/Simulink source codes toreproduce the experiments presented in the book:"Introduction to Microcontroller Programming for Power Electronics Control Applications" M.Rossi, N.Toscani, M.Mauri, F.Castelli-Dezza.The book covers the mathematical modeling, parameters estimation, control scheme design and related real-time implementation for selected power electronic-based applications. These concepts are illustrated by adopting a C2000 LaunchPad MCU from Texas Instruments and the MathWorks automatic code generation tool able to translate Simulink schemes into executable files.If you find this repository helpful for your activities/publications, please consider citing our book:M. Rossi, N. Toscani, M. Mauri, F. Castelli-Dezza, "Introduction to Microcontroller Programming for Power Electronics Control Applications: Coding with MATLAB and Simulink". Boca Raton, USA: CRC Press, 2021. https://doi.org/10.1201/9781003196938and put a star ⭐ to keep an eye on future commits.🎉 Here a book review published on How2Power newsletter (April 2023) from Dennis Feucht (Innovatia Laboratories)Running experimentsExperiments (simulations and implementations) are split in root folders referring to the book chapters.The m-files including the parameters initialization have to be executed before each simulation or code generation.Required:MATLAB 2018b or newerEmbedded Coder Support Package for TI C2000 (or C2000 Microcontroller Blockset)TI controlSUITE (or C2000Ware) and Code Composer Studio v6 or newercheck MathWorks webpage or Texas Instruments webpageFeedbackThis material is currently adopted for exercises and laboratory activities at "Politecnico di Milano (Italy)", "University of Nebraska-Lincoln (USA)", "Istanbul Technical University (Turkey)", and "Tongji University - Department of Urban Rail and Railway Engineering (China)".📌 If you are interested in the HW kits, feel free to contact me ✉️📌 Looking forward to hearing your success stories.... (feel free to reach out 👋)Copyright© 2021The book has been sponsored by:Politecnico di Milano, Texas Instruments, Wuerth Elektronik, MathWorks and ePEBBs.🎥 Check the webinar below (click on it):⚡Contributors over the years (students/researchers/professors):Mattia Rossi, Nicola Toscani, Francesco Castelli-Dezza, John Kluza, Antonin AncelleMarco Mauri, Matteo Sposito, Andrea Polastri, Luca Grittini, Alessandro Grittini,Luigi Piegari, Antonio Faggio, Angelo Strati, Andrea De Gruttola, Giuseppe Ballarin,Marco Gerosa, Alberto Paolini, Khaled ElShawarby, Paolo Panarese
Description This package can be used to communicate a SolsTiS M Squared CW Ti-saphire laser using TCP/IP. The functions can be used to send a general command, or use the built in functionality for getting and setting the wavelngth. The main nontrivial trick was to count '}' characters instead of waiting for a terminator. The Solstis does not send a terminator character over TCP/IP, so if Matlab expects one, then there is a long lag until the timeout is reached. The SolsTiS laser should be set up in a standard way using an Angstrom wavemeter. Setup involves setting the TPC/IP addresses correctly in the web interface. In the solstis interface, set the remote interface to the control computer's ip address. Then disable and enable the link. You can find a windows machine's ip address by typing ipconfig into the command prompt. Functions. solstis_findInstrument - initialize solstis instrument object solstis_getWavelength - read wavelength solstis_gotoWavelength - go to wavelength solstis_clearBuffer - Clear all incoming messages solstis_getResponse - read solstis instrument sostis_query - query solstis instrument solstis_processResponse - processes solstis text response
Laboratory 7 of 12 for the Texas Instruments TMS320C5416 DSK.A self-teach application or college laboratory to allow the student to find out by practical experiment the answer to the following question: What is the difference in behaviour between IIR bandstop and notch filters designed a) placing poles and zeroes b) using the Bilinear Transform (BLT)?Different filter types may be selected and the effect heard. Frequency response curves generated from supplied MATLAB source files and also in a Word document. The application could be modified for the TMS320C5402 DSK, although this has less user switches (2 vs. 4 of 'C5416).
Rejoice medical imaging/computer vision researchers, a lightweight neuroimaging .nii to .png converter for your image processing needs.1. Add your script to your path. And run it simply by typing this and hitting enter: nii2png2. Select your working directory.3. Select your NIfTI image.4. Rotate your image if you wish.5. Let it run.6. Your png files are now in the png folder of your working directory.
Laboratory 6 of 12 for the Texas Instruments TMS320C5416 DSK.A self-teach application or college laboratory to allow the student to find out by practical experiment the answer to the following question:An Infinite Impulse Response (IIR) filter can be used to implement low pass and high pass Butterworth filters, which behave in the same way as analogue (resistor-capacitor) filters. What order of filter (1st order to 6th order) is required to give acceptable cut-offs for audio work?IIR filters from 1st order to 6th order can be selected and the effect heard.Frequency response curves generated from supplied MATLAB source files and also in a Word document.The application could be modified for the TMS320C5402 DSK, although this has less user switches (2 vs. 4 of 'C5416).
Laboratory 8 of 12 for the Texas Instruments TMS320C5416 DSK.A self-teach application or college laboratory to allow the student to find out by practical experiment the answer to the following question: What is the difference in sharpness of cut-off and stability between IIR bandpass filters designed by a) placing poles and zeroes b) using the Bilinear Transform (BLT)?Different filter types may be selected and the effect heard. Frequency response curves generated from supplied MATLAB source files and also in a Word document.The application could be modified for the TMS320C5402 DSK, although this has less user switches (2 vs. 4 of 'C5416).
This is a simple version of speed control of induction motor using V/F control method. This method is implemented on hardware using embedded coder and Texas instruments C2000 microcontroller using embedded coder. It done at inQbe innovation pvt ltd cochin, INDIA.see at www.inqbe.in
JNIfTI Toolbox - Fast and portable NIfTI-1/2 reader and NIfTI-to-JNIfTI converter--------------------------------------------------------------------------------Version: 0.5 (Ascendence)URL: http://github.com/fangq/jnifti[Update 10/11/2019] JNIfTI is now available on Fedora/NeuroFedora, install using sudo dnf install octave-jnifti== Overview ==This is a fully functional NIfTI-1/2 reader/writer that supports both MATLAB and GNU Octave, and is capable of reading/writing both non-compressed and compressed NIfTI files (.nii, .nii.gz) as well as two-part Analyze7.5/NIfTI files (.hdr/.img and .hdr.gz/.img.gz).More importantly, this is a toolbox that converts NIfTI data to its JSON-based replacement, JNIfTI (.jnii for text-based and .bnii for binary-based), defined by the JNIfTI specification (http://github.com/fangq/jnifti). JNIfTI is a much more flexible, human-readable and extensible file format compared to the more rigid and opaque NIfTI format, making the data much easier to manipulate and share.== Installation ==The JNIfTI toolbox includes a stand-alone NIfTI-1/2 parser that works on both MATLAB and GNU Octave without needing additional components. To just reading and writing the un-compressed NIfTI and Analyze7.5 files (.nii, .hdr/.img), one only needs to run addpath('/path/to/jnifti'). For MATLAB, JNIfTI toolbox utilizes memmapfile-based disk-reading, making it very fast. For Octave, memmapfile is currently not implemented, so, a full reading is required.The JNIfTI toolbox is also capable of reading/writing gzip-compressed NIfTI and Analyze7.5 files (.nii.gz, .hdr.gz, .img.gz). This feature is supported in MATLAB directly without needing another toolbox (MATLAB must be in the JVM-enabled mode).To process gzip-compressed NIfTI/Analyze files in Octave and MATLAB with -nojvm, one need to install the open-source JSONLab and ZMat toolboxes, both supporting MATLAB and Octave. They can be downloaded atJSONLab: http://github.com/fangq/jsonlabZMat: http://github.com/fangq/zmatTo save NIfTI-1/2 data as JNIfTI files, one needs to install JSONLab. The JNIfTI data format supports internal compression (as oppose to external compression such as *.gz files). To create or read compressed JNIfTI files in Octave, one must install the ZMat toolbox, as listed above.== Usage ===== nii2jnii - To convert a NIfTI-1/2 file to a JNIfTI file or data structure ===Example: savenifti(rand(10,10,10),'test.nii'); nii=nii2jnii('test.nii', 'nii'); % read a .nii file as a nii structure gzip('test.nii'); nii=nii2jnii('test.nii.gz'); % read a .nii.gz file as a jnii structure nii2jnii('test.nii.gz', 'newdata.jnii') ;% read a .nii.gz file and convert to a text-JNIfTI file nii2jnii('test.nii.gz', 'newdata.bnii','compression','zlib'); % read a .nii.gz file and convert to a binary-JNIfTI file with compression=== loadnifti - To read a NIfTI-1/2 (.nii or .nii.gz) file (alias to nii2jnii) ===# Example: nii=loadnifti('test.nii.gz'); % read a .nii.gz file as a jnii structure nii=loadnifti('test.nii', 'nii'); % read a .nii file as a nii structure=== savenifti - To write an image as NIfTI-1/2 (.nii or .nii.gz) file ===Example: savenifti(img,'test.nii.gz'); % save an array img to a compressed nifti file savenifti(img, 'test.nii', 'nifti2'); % save an array img to a nifti-2 file file savenifti(img, 'test.nii', header); % save an array img with an existing header=== loadjnifti - To read a JNIfTI (.jnii or .bnii) file ===# Example: jnii=nii2jnii('test.nii.gz'); savejnifti(jnii, 'magic10.bnii','Compression','gzip'); newjnii=loadjnifti('magic10.bnii');=== savejnifti - To write a JNIfTI structure into a file (.jnii or .bnii) ===# Example: jnii=jnifticreate(uint8(magic(10)),'Name','10x10 magic matrix'); savejnifti(jnii, 'magic10.jnii'); savejnifti(jnii, 'magic10_debug.bnii','Compression','gzip');
This block generates an orthogonal signal using a structure based on second order integrator. It has the advantages of simple implementation, signal filtering without delay due to the resonance at the fundamental frequency. The block is experimentally tested for code generation on DSP c2000 28335 and works perfectly.Please rate the model if you like it
# Input / Outputfunction [NWP,NWR] = pack_v(f) ... outputs positions of circles (NWP) and corresponding radii (NWR) given an input vector (f) of radii size.# Result ExamplePacking result for N=3332 circles, Gamma distributed in size with shape factor 3.81, is shown in result_v1.png# Motivation & TheoryUpdated March 09 2016. This algorithm produces random close packing or RCP on an input of N radii following any arbitrary distribution of size. The script was developed as part of my PhD project, which involves modelling white matter microstructure. White matter bundles in the human brain consist of axons (or hollow cylinders) running uni-directionally. A 2-dimensional cross section of such a cylindrical bundle can be represented by a packing of circles. In human anatomy, axon size follow a Gamma distribution. Conventional software for biophysical modeling (for example, UCL's Camino Diffusion MRI toolkit) generates packing densities up to 65%. However, axon density in white matter regions such as the corpus callosum can reach densities up to 85%, based on literature values.This algorithm is developed with motivation from electromagnetic theory. Given N charged particles, the task cast is to produce the configuration of maximum potential energy by minimizing the sum of distances of the circles - the assumption being that such a configuration is equivalent to or at least close to that of maximum packing density. This is performed iteratively. A pool of N circles is generated. Next, a circle is selected at random without replacement. The placement or position of the selected circle is determined such that its distance to the average center of the circles already placed is minimized. This process is iterated. For small N (~50) algorithm takes ~2 minutes with 8GB of RAM. For large N (~3000), algorithm takes ~10 hours. To confirm the method's robustness on first pass, if the input is circles of uniform size, it converges to hexgonal close packing (HCP).
Steam and water properties for Matlab based on the "International Association for Properties of Water and Steam Industrial Formulation 1997 (IAPWS IF-97). A full implementation of the IF-97 standard that provides very accurate steam and water properties in ranges from 0-1000 bar and 0-2000°C. Provided thermodynamic properties are: TemperaturePressureEnthalpySpecific volumeDensitySpecific entropySpecific internal energySpecific isobaric heat capacitySpecific isochoric heat capacitySpeed of soundViscosityVapour fractionAll properties can be calculated with the inputs, p and T known, p and h known, h and s known and some with pressure and density known. X Steam are a full implementation of the IF-97 formulation including all regions and all backward functions for good calculation speed. The code are speed optimized with pressure and enthalpy as inputs for dynamic simulations.Examples:XSteam('h_pt',1,20) return the enthalpy of water at 1 bar and 20 degC. 84.0118 kJ/kgXSteam('rho_ph',1,3000) return the density of steam at 1 bar and 3000 kJ/kg. 0.4056 kg/m3XSteam('w_pt',1,20) returns the speed of sound at 1 bar and 20 deg C. 1483.4 m/sXSteam('tSat_p',1) returns the saturation temperature at 1 bar. 99.6059 deg CThe X Steam Tables are the perfect tool both for replacing paper tables and for advanced calculations. The X Steam tables are open source and free of charge. The X Steam tables are also available as MS Excel scripts, OOo Sripts, Dynamic Link Libary .DLL. Please visit www.x-eng.com.New version 2.5
DATESTR2NUM - Fast conversion of DATESTR to DATENUMThe builtin DATENUM command is very powerful, but if the input is known to be valid and formatted exactly, a specific MEX can be much faster:For single strings DateStr2Num is about 120 times faster than DATENUM, for a {1 x 10000} cell string, the speed up factor is 300 to 600(!), (Matlab 2011b/64, MSVC 2008).D = DateStr2Num(S, F)INPUT: S: String or cell string in DATESTR(F) format. In opposite to DATENUM the validity of the input string is *not* checked. F: Integer number defining the input format. Accepted: 0: 'dd-mmm-yyyy HH:MM:SS' 01-Mar-2000 15:45:17 1: 'dd-mmm-yyyy' 01-Mar-2000 29: 'yyyy-mm-dd' 2000-03-01 30: 'yyyymmddTHHMMSS' 20000301T154517 31: 'yyyy-mm-dd HH:MM:SS' 2000-03-01 15:45:17 230: 'mm/dd/yyyyHH:MM:SS' 12/24/201515:45:17 231: 'mm/dd/yyyy HH:MM:SS' 12/24/2015 15:45:17 240: 'dd/mm/yyyyHH:MM:SS' 24/12/201515:45:17 241: 'dd/mm/yyyy HH:MM:SS' 24/12/2015 15:45:17 1000: 'dd-mmm-yyyy HH:MM:SS.FFF' 01-Mar-2000 15:45:17.123 1030: 'yyyymmddTHHMMSS.FFF' 20000301T154517.123OUTPUT: D: Serial date number.EXAMPLE: C = {'2010-06-29 21:59:13', '2010-06-29 21:59:13'}; D = DateStr2Num(C, 31) >> [734318.916122685, 734318.916122685] Equivalent Matlab command: D = datenum(C, 'yyyy-mm-dd HH:MM:SS')The C-file must be compiled before using. This is done automatically at the first call of this function.Pre-compiled Mex files can be downloaded from: http://www.n-simon.de/mexTested: Matlab 6.5, 7.7, 7.8, 7.13, 32/64bit, WinXP/7Compiler: LCC 2.4/3.8, BCC 5.5, Open Watcom 1.8, MSVC 2008 Compatibility to MacOS, Linux, 64 bit is assumed, but not tested.See also: DateConvert (Jan Simon) http://www.mathworks.com/matlabcentral/fileexchange/25594
The function generate a file in TI format. The TI file is a typical file used for Texas Instruments debug operation and for Code Composer Studio.A TI file contains a header made by 5 fields:Magic Number: which is always 1651Format: can be hexadecimal, integer, long, floatStarting Address: starting address in the memory of a physical device memory where the file will be storedPage Num: the page number where the memory block was taken for (it is not the case of this function)Length: number of samples stored in the fileThis function generate a file in TI format considering a vector of integer or float number.
In this repository, a two-dimensional (2-D) near-field imaging solution based on the combination of synthetic aperture radar (SAR) processing techniques and the low-cost system-on-chip millimeter-wave frequency-modulated continuous-wave (FMCW) radars is provided. To create a synthetic aperture over the target scene, a two-axis automatic rail system is built and integrated with Texas Instruments IWR1443 77-GHz millimeter-wave FMCW radar sensor. Simplified signal processing techniques for near-field 2-D image formation isintroduced.Recorded SAR data samples can be downloaded from the link below:https://utdallas.box.com/v/2D-mmWave-imaging-datasetAcknowledgement: This work was supported by the Semiconductor Research Corporation (SRC) task 2712.029 through The University of Texas at Dallas’ Texas Analog Center of Excellence (TxACE)
The program offers GUI (dicom_sort_convert_main.m) and .m (example_dscm_call.m) input to select input and output directories and determine options. The main functions arei) sorting of Siemens MR scanner (IMA) data into directories, removal of patient name from file, and lightly anonymisaton (only PatientName fields but not DOB, gender, PatientID, etc)ii) Conversion to one-file (.nii) or two-file (.img, .hdr) NIfTI format (one per scan), reformatting more complex scans to use up to six dimensions of the NIfTI structure (time-points, echo, RF channel, phase/magnitude, diffusion gradient, etc). Also writes both DICOM header info and the text section of Siemens header info to a text_header.txt file for each scan.iii) Generation of a list of all scans performed (scan_list.txt) including most relevant parameters (can easily be customised), making it easy to generate a summary sheet for each subject scanned. Thanks to Jimmy Shen for sharing, developing and supporting his excellent NIfTI toolbox.
Lab 4a:The primary goal of the first lab is to familiarize you with using Simulink so that in the next lab you can use Simulink to program a DSP. Here are three specific goals for this lab:• Learn basic Simulink commands and syntax, including the help system.• Learn to write and edit your own blocks in Simulink, and run them.• Learn a little about advanced programming techniques for Simulink.• Implement the music synthesis in Simulink.Lab 4b:In this lab you will learn:• How to install the software to target a TI ‘C6713 DSK.• How to convert the music synthesis program from Lab 04a to run on the DSK.Lab 4c:One of the powerful features of Simulink is its ability to target embedded hardware. In this lab you will learn:• How to monitor the performance of the DSK.• How to improve the performance of the DSK.These labs supplement the following textbooks:• DSP Firsthttps://www.mathworks.com/academia/books/dsp-first-mcclellan.html• Signal Processing Firsthttps://www.mathworks.com/academia/books/signal-processing-first-mccellan.html
A Matlab toolbox for NIfTI and Analyze (img/hdr) image visualization, editing, and 3D rendering.View the README at https://github.com/elayden/NIfTI-Studio for additional information, installation instructions, and examples.
A software defined radio is a transmitter and receiver system that uses digital signal processing (DSP) for coding, decoding, modulating, and demodulating data. This project focused on using the IEEE 802.11a specification to create a software radio. The feasibility of using Mathwork,s Simulink and Texas Instrument¡¯s Code Composer Studio to design, test, and prototype an OFDM software radio system on a Texas Instruments CDSK6713 DSP development board was studied. Among the subjects examined were communication with the board through real time data exchange (RTDX), quadrature amplitude modulation (QAM), orthogonal frequency division multiplexing (OFDM), frame and carrier synchronization, and issues with Simulink DSP code generation for prototyping. This is a senior capstone project performed in Department of Electrical and Computer Engineering, at Bradley University in spring 2006. The complete project report is available upon request.
Individually LED blinking or Analog signal output is working. but together it is not working. Microcontroller gets halted. there is no matlab error in the command window.
This function is an extension of the DICOM-to-NIfTI converter 'dicm2nii' (https://www.mathworks.com/matlabcentral/fileexchange/42997-dicom-to-nifti-converter--nifti-tool-and-viewer). It converts a set of DICOM (Digital Imaging and Communications in Medicine) files to NIFTI-1 format (http://nifti.nimh.nih.gov/nifti-1) "for 4D data" such as functional magnetic resonance imaging (MRI). This function requires the FMRIB Software Library (FSL, http://fsl.fmrib.ox.ac.uk/fsl/fslwiki/) as well as dicm2nii on Linux. An example command is given as follows:dicom2nii('dicom_folder','out.nii.gz');
Este ejemplo, muestra como utilizar las librerías de Matlab para capturar datos por el puerto serial, generar gráficos y analizis de espectro por Fourier.Para este ejemplo se utiliza la Texas Instruments Hércules RM46, que es programada utilizando HalCoGen y el Code Composer Studio v6, se requiere de una tarjeta extra para el analizáis de la señal alterna.Hardaware requerido:- TI Hercules RM46 Launchpad- Tarjeta para adquision de voltaje hasta 600V (Esquemáticos en el link/ Usar CadSoft Eagle).- Pasos para el Desarrollo en los siguientes vídeo. Los vídeos están echos en español.This example shows how to use libraries Matlab to capture data from the serial port, generate graphs and analizer Fourier spectrum.For this example, the Texas Instruments Hercules utilza RM46, which is programmed using HalCoGen and Code Composer Studio v6, requires an extra card for analizáis of the alternating signal.Hardaware required:- TI Hercules RM46 Launchpad- ACQUISITION card voltage up to 600V (schematic in the link / Use CadSoft Eagle).- Steps for Development in the following video.The videos are do in Spanish.https://youtu.be/EKvwkBmyiw0?list=PLfUUU8YDW88yJBpRYvsd90fFXxK_CiU2qhttps://www.youtube.com/watch?v=C5yufIjOTqk&index=2&list=PLfUUU8YDW88yJBpRYvsd90fFXxK_CiU2q
ScaleTime - fast linear matrix interpolation Yi = ScaleTime(Y, T)Where T is a vector with values between 1 and size(Y,1). This is equivalent to Yi = interp1(1:size(Y, 1), Y, T, 'linear')If T is defined by uniform steps: T = linspace(Ti, Tf, Tn) this is faster: Yi = ScaleTime(Y, Ti, Tf, Tn)For nun-uniform input use the 2nd function: Yi = ScaleTimeNU(X, Y, Xi)I have recorded timeseries of e.g. size [100'000 x 10] and cut out chunks of about 100 frames according to some events and normalize them to 101 frames.The direct approach with Matlab's INTERP1 works, but it is slow: interp1(1:size(Y, 1), Y, Ti, '*linear')Therefore I've created the function ScaleTime for: - linear interpolation - equally spaced input data - equally or non-equally spaced interpolation steps - matrix input - no handling of NaNs, no extrapolation.To my surprise, ScaleTime is remarkably faster than INTERP1 and even the modern griddedInterpolant. The functions lininterp1f and qinterp1 from the FEX do not accept matrices and they are significantly slower than the MEX ScaleTime:http://www.mathworks.com/matlabcentral/fileexchange/8627http://www.mathworks.com/matlabcentral/fileexchange/10286If you have installed these tools, their speed is compared in uTest_ScaleTime.Included: M-source, C-source. Compilation: Automatically at running ScaleTime the first time, or: mex -O ScaleTime.cPre-compiled mex function coming soon on: http://n-simon.de/mex
Embedded Coder® Support Package for Texas Instruments™ C6000™ DSPs enables you to generate a real-time executable and download it to your TI development board. Embedded Coder automatically generates C code and inserts the I/O device drivers in your block diagram. These device drivers are inserted in the generated C code.This support package is functional for R2014a through R2016a.If you have download or installation issues, please contact Technical Support: www.mathworks.com/contact_ts
This file summarizes the steps for CCS preparation before implementing Simulink model to DM6437. Feel free to comment.
This app returns the amount of TiO2 particles needed to create an effective optical coating in a PDMS core.The user has to select the working wavelength, the transmittance needed (ranging from 0 to 100%), and the width of the cladding. Then, the minimum amount of particles to be dispersed in the matrix will be given shown in the top part of the user interface.
This is based on the calculations in ASME B89.4.19: Performance Evaluation of Laser-Based Spherical Coordinate Measurement Systems. It can be used for both distance measurement using laser ranging techniques and for angle based measurements such as theodolites and photogrammetry. It could also be used to model optical distortions due to temperature gradients; commonly referred to as 'heat haze'. It will calculate distance errors (radial error) and angular errors (transverse error) given a number of segments of a ray or beam, the temperature the instrument uses to calculate refractive index, the average temperature over the segment, the perpendicular temperature gradient, the vacuum wavelength of the light, the carbon dioxide concentration, the atmospheric pressure and the humidity. The user must also specify the number of sub-divisions for each segment so that the curve of the ray can be plotted.
%#########################################################################%%# PROGRAMMER : MOHAMED SAJEER IBN AZAD MODAVAN #%%# DATE : 03.09.2013(Last modified: 01:12:2015) #%%# ABSTRACT : This Code used to Run SAP2000 from Matlab to find the #%%# Natural frequency. This code may help you to adjest the #%%# material properties to match the Natural frequency #% %# of model with the actual value of Natural frequency. %#%# Also you can use optimisation tool with this code for #%%# finding optimum Design properties. #%%#=======================================================================#%%# Modifications may be required #%%#=======================================================================#%%# * Modify the version number of SAP2000 in line 31 #%%# * This code required to modify for file path in line 40 #%%# * In line 57 & 58 change the material name according to your model #%%# * Material properties you can #%%#########################################################################%clear; clc; close all% Material PropertiesEco = 20e6; % Modulus of Elasticity of ConcreteEst = 21e7; % Modulus of Elasticity of Steelnu_c = 0.2; % Poisson's Ratio of Concretenu_s = 0.3; % Poisson's Ratio of Steel% Pass data to Sap2000 as one-dimensional arraysfeature('COM_SafeArraySingleDim', 1);% Pass non-scalar arrays to Sap2000 API by referencefeature('COM_PassSafeArrayByRef', 1);% Create Sap2000 objectSapObject = actxserver('sap2000v15.SapObject'); % Version of Sap2000% Start Sap2000 applicationSapObject.ApplicationStart;% Hide Application, Hide <=> UnhideSapObject.Hide; % Create SapModel objectSap = SapObject.SapModel;%% % Open existing file FilePath = 'D:\Frame'; % Location of Sap2000 ModelSap.File.OpenFile([FilePath,'.sdb']);%%% Edit Model% ----------% Model lock =>(1)or unlock =>(0) Sap.SetModelIsLocked(0); % Switch to units% lb_in_F = 01 lb_ft_F = 02 kip_in_F = 03 kip_ft_F = 04% kN_mm_C = 05 kN_m_C = 06 kgf_mm_C = 07 kgf_m_C = 08% N_mm_C = 09 N_m_C = 10 Ton_mm_C = 11 Ton_m_C = 12% kN_cm_C = 13 kgf_cm_C = 14 N_cm_C = 15 Ton_cm_C = 16Unit = 06;Sap.SetPresentUnits(Unit); % Assign isotropic mechanical properties Sap.PropMaterial.SetMPIsotropic('Concrete', Eco, nu_c, 1.170E-05);Sap.PropMaterial.SetMPIsotropic('Steel', Est, nu_s, 1.170E-05);% Run model (this will create the analysis model)Sap.Analyze.RunAnalysis(); % Set run case model% Sap.Analyze.SetRunCaseFlag('MODAL', 1);%%% Results% -------% Count number of joints & DOF countP = Sap.PointElm.Count; DOF = countP*3-12; disp('DEGREE OF FREEDOM');disp(DOF) % FrequencyAA = fopen([FilePath,'.LOG'],'r');Fr1 = fread(AA);s = char(Fr1');fclose(AA);word1Location = strfind(s, 'NUMBER OF EIGEN MODES FOUND'); word2Location = strfind(s, 'NUMBER OF ITERATIONS PERFORMED'); TextLine = s(word1Location:word2Location-1); Number_Modes = str2double(TextLine(54:end)); disp('NUMBER OF EIGEN MODES');disp(Number_Modes) Frq = zeros(Number_Modes,1); for ii = 1:Number_Modes if ii == Number_Modes word1Location = strfind(s, ['Found mode ' num2str(ii)]); word2Location = strfind(s, 'NUMBER OF EIGEN MODES FOUND'); elseif ii < 9 word1Location = strfind(s, ['Found mode ' num2str(ii)]); word2Location = strfind(s, ['Found mode ' num2str(ii+1)]); elseif ii == 9 word1Location = strfind(s, ['Found mode ' num2str(ii)]); word2Location = strfind(s, ['Found mode ' num2str(ii+1)]); elseif (ii>9) && (ii~=Number_Modes) word1Location = strfind(s, ['Found mode ' num2str(ii)]); word2Location = strfind(s, ['Found mode ' num2str(ii+1)]); end Mode = s(word1Location:word2Location-1); word1Location = strfind(Mode, 'f='); word2Location = strfind(Mode, ', T= '); Fre = Mode(word1Location:word2Location-1); Freq = str2double(Fre(3:14)); Frq(ii,:) = Freq; end disp('FREQUENCY IN Hz');disp(Frq)%% % save model Sap.File.Save([FilePath,'.sdb']);%%% close Sap2000SapObject.ApplicationExit(false());SapModel = 0;SapObject = 0;
Five different approaches are used in the test_MoonPosition.m for the computation of lunar coordinates; NASA JPL Development Ephemerides (DE440), very accurate ELP2000-82, high-precision analytical series (Brown's theory), low-precision analytical series, and Simpson analytical method.References:1. Montenbruck O., Gill E.; Satellite Orbits: Models, Methods and Applications; Springer Verlag, Heidelberg; Corrected 3rd Printing (2005).2. Montenbruck O., Pfleger T.; Astronomy on the Personal Computer; Springer Verlag, Heidelberg; 4th edition (2000).3. Vallado D. A; Fundamentals of Astrodynamics and Applications; McGraw-Hill; New York; 3rd edition (2007).4. van Flandern T. C., Pulkkinen K. F.; Low precision formulae for planetary positions; Astrophysical Journal Supplement Series 41, 391 (1979).5. https://ssd.jpl.nasa.gov/planets/eph_export.html 6. https://celestrak.org/SpaceData/EOP-All.txt
The model simply implement a dtmf gererator into a TI C6711 DSK. 3 user switches are used to send different dtmf tone to the line out. To check for the result, one can either connect the line out of the board to the speaker or to a dtmf decoder(e.g.:model in Simulink and feed the signal in through line in of computer).
Using the Radar Toolbox Support Package for Texas Instruments® mmWave Radar Sensors, you can connect, configure, and acquire radar data from Texas Instruments millimeter wave (mmWave) Sensor Evaluation Modules (EVMs). You can use the support package to obtain the real radar data and use it with the capabilities in Sensor Fusion and Tracking Toolbox™ to build, test, and validate tracking applicationsFeaturesConnect, configure, and stream radar measurements from TI mmWave Radar EVM into MATLAB.Read real object detections and other radar measurements such as Range profile, Noise profile, Range Doppler response, etc.Use the multi-object tracker functions in Sensor Fusion and Tracking Toolbox along with the support package to develop and test tracking applications.Supported Hardware IWR6843ISKAWR6843ISKIWR6843AOPEVMAWR6843AOPEVMAWR1843AOPEVMIWR1642BOOSTAWR1642BOOSTIWRL6432BOOSTInstallation 1. MATLAB Installation - Go to MathWorks official installation instruction webpage to get started with the installation process from this link. - Select the following products for installation:MATLABRadar Toolbox Phased Array System ToolboxDSP System ToolboxSignal Processing Toolbox2. Support Package installation - Follow the steps mentioned on this link to install the Radar Toolbox Support Package for Texas Instruments® mmWave Radar Sensors. - At the end of the support package installation, you will find “Setup Now” and “Setup Later” buttons. It is recommended to follow the instructions by clicking “Setup Now”.If you click “Setup Now”, the hardware setup screens are launched after the support package installation window closes. In these screens, you will find guided steps to complete the required installations and hardware configurations.If you choose “Setup Later” option, the support package installation window would exit. You can start the hardware setup from the Add-Ons Manager later as mentioned in the “Hardware Setup” section of the above-provided link.DocumentationMain Page Setup and Configuration Functions Examples Release Notes Getting Started ExampleGetting Started with Radar Toolbox Support Package for Texas Instruments mmWave Radar Sensors Application Examples People Tracking Using TI mmWave RadarTrack Objects in a Parking Lot Using TI mmWave Radar NotesThis hardware support package is functional for R2023b and beyond.Use the ‘’Comments and Ratings’’ section to share your experience and rate the support package.For installation issues with this support package or for any technical queries, please contact MathWorks Technical Support.
toolbox_wavelets - wavelets related functions.Orthogonal wavelet transform:- perform_wavelet_transform - WAVELAB implementation of the wavelet transform.Wavelet transform using lifting implementation (symmetric boundary condition):- perform_lifting_transform / perform_lifting_transform_slow - 1D wavelet transform via lifting (general interface).- perform_lifting_transform_byname - string based interface.- perform_79_transform - biorthogonal 7/9 1D wavelet transform- perform_wavelet_transform_isotropic - multidimensional isotropic (i.e. classical) wavelet transform.- perform_wavelet_transform_hyperbolic - multidimensional hyperbolic (i.e. fully tensorial) wavelet transform.Pyramid transform:- perform_pyramid_transform - Laplacian-like pyramidal transform.- perform_pyramid_transform_do - Minh Do Pyramidal transform (much better).- perform_pyramid_transform_simoncelli - Steerable pyramid implementation of the Laplacian.- perform_pyramid_transform_ti - translation-invariance pyramid (difference of Gaussian filterings).Other transforms:- perform_haar_transform - a simple but very fast 1D haar transform.- perform_atrou_transform - compute the "a trou" wavelet transform, i.e. without subsampling (try to use either RWT or CWP2 when available).- perform_cpx_dualtree_transform - complex dual tree transform.- perform_steerable_transform - Steerable pyramid transform.Compression and coding function:- perform_jp2k_degradation - Perform JPEG2000 coding and decoding of wavelet coefficients.- perform_spiht_coding - Perform SPIHT coding (slow) of the wavelet coefficients.- perform_wavelet_arithmetic_coding - Perform simple arithmetic coding of the wavelet coefficients.- evaluate_nbr_bits_wavelets - compute the entropy of a wavelet transform.Helpers functions:- compute_quadrant_selection - compute the indices for selecting coefficients at a given scale and orientation.- reorder_coefs - switch from inplace (results of lifting transform) to classical ordering.- plot_wavelet - plot wavelet using Mallat's ordering.- convert_wavelets2list - extract each sub-image.Test scripts: see test_???.m files.Installation note : you need to add the content of toolbox/ in your Matlab path.Copyright (c) 2006 Gabriel Peyré
A Nifti 3D Viewerbased on the work done by Jimmy Shen(#8797)Added some new features:1 Open files from a tree view file browser (Menu: File -> File Browser)2 Support scroll wheel to change view3 Click hold and move left button to change view, instead of clicking multiple times 4 Adjust windown/level using right button (current axis) or both buttons (all axes)5 Now load and show example MRI T1data, if no parameters passing in i.e view_nii();Example: %To run the viewer: view_nii;
The function NUM2SIP converts a numeric scalar into a string with an SI prefix (aka metric prefix, or engineering prefix). For example the value 1000 is converted to '1 k'. The bonus function NUM2BIP converts from numeric to binary-prefixed string, for example the value 1024 is converted to '1 Ki'. After testing many submissions on MATLAB FEX (see Acknowledgements) and not finding a single one that converted all values correctly and that supported the correct SI spacing, I wrote my own functions. And then exhaustively tested them to confirm that they actually give the correct output.These functions are particularly useful to help create publications following SI standards, or where control over significant digits and trailing zeros is required, or for including numeric values in figures.This submission:Always includes the space character (required by the SI standard).Automatically selects the most suitable prefix.Rounds to the requested significant figures (default==5).Prefix may be selected as either the full name ('kilo') or the symbol ('k').Trailing decimal zeros of the coefficient may be included or removed.Rounds up to the next prefix when significant figures require, e.g. '1 M', not '1000 k'.Also returns the numeric coefficient and the prefix separately.Includes the prefixes added in November 2022: ronna, quetta, ronto, and quecto.Reverse Conversionhttp://www.mathworks.com/matlabcentral/fileexchange/53886-scientific-prefix-to-numberSI Prefix Examples>> num2sip(10000) % OR num2sip(1e4)ans = '10 k'>> num2sip(10000,4,true)ans = '10 kilo'>> num2sip(10000,4,false,true)ans = '10.00 k'>> num2sip(999,3)ans = '999 '>> num2sip(999,2)ans = '1 k'>> num2sip(0.5e6)ans = '500 k'>> num2sip(0.5e6,[],'M')ans = '0.5 M'>> sprintf('Power: %swatt', num2sip(200e6,[],true))ans = 'Power: 200 megawatt'>> sprintf('Clock frequency is %sHz.', num2sip(1234567890,3))ans = 'Clock frequency is 1.23 GHz.'>> num2sip(sip2num('9 T')) % 9 tera == 9e12 == 9*1000^4ans = '9 T'Binary Prefix Examples>> num2bip(10240) % OR num2bip(1.024e4) OR num2bip(pow2(10,10)) OR num2bip(10*2^10)ans = '10 Ki'>> num2bip(10240,4,true)ans = '10 kibi'>> num2bip(10240,4,false,true)ans = '10.00 Ki'>> num2bip(1023,3)ans = '1020 '>> num2bip(1023,2)ans = '1 Ki'>> num2bip(pow2(19))ans = '512 Ki'>> num2bip(pow2(19),[],'Mi')ans = '0.5 Mi'>> sprintf('Memory: %sbyte', num2bip(pow2(200,20),[],true))ans = 'Memory: 200 mebibyte'>> sprintf('Data saved in %sB.', num2bip(1234567890,3))ans = 'Data saved in 1.15 GiB.'>> num2bip(bip2num('9 Ti')) % 9 tebi == pow2(9,40) == 9*1024^4ans = '9 Ti'SI Prefixes (Bureau International des Poids et Mesures) Magnitude | Symbol | Name 1000^-10 | q | quecto 1000^-9 | r | ronto 1000^-8 | y | yocto 1000^-7 | z | zepto 1000^-6 | a | atto 1000^-5 | f | femto 1000^-4 | p | pico 1000^-3 | n | nano 1000^-2 | µ | micro 1000^-1 | m | milli 1000^0 | | 1000^+1 | k | kilo 1000^+2 | M | mega 1000^+3 | G | giga 1000^+4 | T | tera 1000^+5 | P | peta 1000^+6 | E | exa 1000^+7 | Z | zetta 1000^+8 | Y | yotta 1000^+9 | R | ronna 1000^+10 | Q | quettaBinary Prefixes (IEC 60027-2 A.2 and ISO/IEC 80000-13:2008) Magnitude | Symbol | Name 1024^1 | Ki | kibi 1024^2 | Mi | mebi 1024^3 | Gi | gibi 1024^4 | Ti | tebi 1024^5 | Pi | pebi 1024^6 | Ei | exbi 1024^7 | Zi | zebi 1024^8 | Yi | yobiNotesThese functions have been extensively tested against many edge cases, with particular attention to ensuring the correct rounding for all choices of significant figures. Compared to similar submissions available on MATLAB File Exchange, these functions correctly:include the space character following the coefficient, even if there is no prefix (try value 1).round to the requested significant figures (try 0.999 or 999e3, with 1 or 2 sigfig).return a coefficient without a prefix for zero and values outside the prefix range (try values 0, 7, Inf, 1E99).return a coefficient without exponent notation when the significant digits are less than three (try 1e5 to 1 sigfig).
In this project we would like to deal with training HMM for isolated words data applying EM algorithm. The testing phase is also considered using Viterbi algorithm. The results showed the performances which obtained by Matlab programming are similar to HTK's ones. * Update for 2017-09-07Before running these programs, please first prepare the training and testing data. Excerpts of TIDIGITS database can be obtained from this link: http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course.html with the title of "isolated TI digits training files, 8 kHz sampled, endpointed: (isolated_digits_ti_train_endpt.zip)." or, you may directly download the .zip file of training database from this link: - training data: http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course/databases/isolated_digits_ti_train_endpt.zip- testing data:http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course/databases/isolated_digits_ti_test_endpt.zipPlease decompress all the data sets and locate them into the directory 'wav'. We have just added some feature extracting functions that would help you to convert '.wav' files to '.mfc' (or '.mfcc') files (feature files) Now you may run this project with only ONE click on the main function: 'EM_HMM_isolated_digit_main.m'
MEX file to compute Fresnel integrals. [C, S] = fcs(x) returns Fresnel integrals C ans S for argument x, x must be double and real. F = fcs(x) returns complex F = C+i*SAlgorithm:This function uses an improved method for computing Fresnel integrals with an error of less then 1x10^-9, described in: Klaus D. Mielenz, Computation of Fresnel Integrals. IIJ. Res. Natl. Inst. Stand. Technol. 105, 589 (2000), pp 589-590 Notes for Linux implementationCompile this with: mex -O fcs.c Notes for Windows implementationCompile this with: mex -O fcs.c -DWIN32
rho calculates the frequency-wise stability margin for a plant-controller pair. This gives the user the ability to understand how the closed-loop robustness varies according to frequency.This function provides functionality that is not in Control System Toolbox or Robust Control Toolbox. It is compatible with both products.Usage:[r,rinf,omega] = rho(P,C) or [r,rinf] = rho(P,C,omega) returns the frequency-wise stability margin for the plant-controller pair [P,C] as defined in Vinnicombe (2000, p.68). This essentially gives a frequency-wise measure of the plant-controller pair's robustness. rinf is the infimum of r, unless [P,C] is unstable in which case it is set to zero and a warning message is generated. rho(P,C) or rho(P,C,omega) without any output arguments will display the results in graphical form. REFERENCE1. Vinnicombe, G. (2000) Uncertainty and Feedback: H-Infinity Loop-Shaping and the v-Gap Metric. London: Imperial College See also: sigma
Estimates the parameters of mixed linear model by using Henderson's Mixed Model Equations Algorithm.References:Searle, S.R., Cassela, G., McCulloch, C.E.: Variance Components. John Wiley & Sons, INC., New York, 1992. (pp. 275-286).Witkovsky, V.: MATLAB Algorithm for solving Henderson's Mixed Model Equations. Technical Report No. 3/2000, Institute of Measurement Science, Slovak Academy of Sciences, Bratislava, 2000.
One function converts between RGB and color names, in both directions.The function COLORNAMES accepts either RGB values or color names as its inputs, and returns the color names and RGB values from the palette of your choice. The palette is selected by the first input, the trailing inputs are either color names or RGB values:Input color name matching is case-insensitive with optional spaces, except for some palettes where whitespace or CamelCase is significant. Diacritics and other special characters are optional.Input RGB are matched to the closest palette colors using one of a number of standard color difference metrics. The supported color differences are: CIEDE2000, OkLab, DIN99, CIE94:1, CIE94:2 (default), CIE76 (i.e. CIELAB), CMC2:1, CMC1:1, and RGB.For more information on color difference metrics: https://en.wikipedia.org/wiki/Color_differenceWhether matching color names or RGB, COLORNAMES always returns the same two output arguments:the color names (string array, or cell array of char vectors).a numeric array of the corresponding RGB values.A list of the available palettes is returned by calling COLORNAMES with no inputs. A summary of all palettes is printed by calling COLORNAMES with no inputs and no outputs.Suggestions of interesting palettes (of named colors) are very welcome!Bonus FunctionsCOLORNAMES_CUBE shows palette colors in a 3D cube. The supported colorspaces: Lab, LCh, DIN99, HSV, OKLab, XYZ, and RGB.COLORNAMES_VIEW shows palette colors in 2D axes, and sorting them by various colorspace dimensions (e.g. Lab, XYZ, YUV, HSV, or RGB) or alphanumerically by color name.COLORNAMES_DELTAE creates a figure comparing the color difference metrics.Examples>> palettes = colornames()palettes = 'Alphabet' 'AmstradCPC' 'AppleII' 'Bang' 'BS381C' 'CGA' 'Crayola' 'CSS' 'dvips' 'Foster' 'HTML4' 'ISCC' 'Kelly' 'LeCorbusier' 'MacBeth' 'MATLAB' 'Natural' 'OsXCrayons' 'PWG' 'R' 'RAL' 'Resene' 'Resistor' 'SherwinWilliams' 'SVG' 'Tableau' 'Thesaurus' 'Trubetskoy' 'Wada' 'Werner' 'Wikipedia' 'Wolfram' 'X11' 'xcolor' 'xkcd'>> colornames('Natural') % all color names for one paletteans = 'Black' 'Blue' 'Green' 'Red' 'White' 'Yellow'>> [names,rgb] = colornames('HTML4','blue','RED','Teal','olive')names = 'Blue' 'Red' 'Teal' 'Olive'rgb = 0 0 1.0000 1.0000 0 0 0 0.5020 0.5020 0.5020 0.5020 0>> colornames('HTML4',[0,0.5,1;1,0.5,0]) % default deltaE = CIE94:2ans = 'Blue' 'Red'>> colornames('HTML4',[0,0.5,1;1,0.5,0],'rgb') % specify deltaEans = 'Teal' 'Olive'>> colornames("MATLAB",'c','m','y','k')ans = "Cyan" "Magenta" "Yellow" "Black">> [names,rgb] = colornames('MATLAB');>> compose('%s %d %d %d',char(names),rgb)ans = 'Black 0 0 0' 'Blue 0 0 1' 'Cyan 0 1 1' 'Green 0 1 0' 'Magenta 1 0 1' 'Red 1 0 0' 'White 1 1 1' 'Yellow 1 1 0'
In this project we would like to deal with training GMM-HMM for isolated words data applying EM algorithm. The testing phase is also considered using Viterbi algorithm. The results showed the performances which obtained by Matlab programming are similar to HTK's ones. Before running these programs, please first prepare the training and testing data. Excerpts of TIDIGITS database can be obtained from this link: http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course.htmlwith the title of "isolated TI digits training files, 8 kHz sampled, endpointed: (isolated_digits_ti_train_endpt.zip)."or you may directly download the .zip file of the training database from this link:- training data:http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course/databases/isolated_digits_ti_train_endpt.zip- testing data:http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/speech%20recognition%20course/databases/isolated_digits_ti_test_endpt.zipPlease decompress all the data sets, then locate training and testing data into directories 'wav\isolated_digits_ti_train_endpt' and 'wav\isolated_digits_ti_test_endpt', respectively.The feature file format used in this version is compactable with the HTK format.* Update for 2017-09-07We have just added some feature extracting functions that would help you to convert '.wav' files to '.mfc' (or '.mfcc') files (feature files)* Update for 2017-09-20We have just added some functions as 'slope.m', 'wav2logpow.m', 'wav2mfcc.m'Now you may run this project with only one click!Please run the main function "EM_HMM_multiGaussian_isolated_digit_main.m" to start the work.
I have given values with this to check the model...k_1=18760;k_3=18760;k_2=37520.28;k_4=32000;c_1=900;c_2=936;c_3=900;c_4=936;M=1000;m_1=85;m_2=60;m_3=85;m_4=60;I_x=1000;I_y=1000;k_t=150000;c_t=2000;a=1.07;b=1.32;w=3;F_1=0;F_2=0;F_3=0;F_4=0;k_p=10000;c_p=400;x_p=0.234;y_p=0.375;m_p=100;Plz update and plz comment