Blockset described on this wiki is deprecated since 2012.
For Model Based Design (MBD), use the free MPLAB Device Blocks for Simulink, tool from Microchip.
Updated Rapid Control Prototyping (RCP) custom projects are published at: https://lubin.kerhuel.eu.
Difference between revisions of "Review"
LubinKerhuel (talk | contribs) |
LubinKerhuel (talk | contribs) m |
||
Line 32: | Line 32: | ||
end | end | ||
+ | ---- | ||
+ | ---- | ||
===Quantiphi=== | ===Quantiphi=== | ||
product from SimuQuest companie sell a Matlab toolbox for Microchip PIC18Fx480/x580 (9000$ for a single licence including the UniPhi product) | product from SimuQuest companie sell a Matlab toolbox for Microchip PIC18Fx480/x580 (9000$ for a single licence including the UniPhi product) | ||
+ | |||
+ | ---- | ||
+ | ---- | ||
===Scicos-Scilab=== | ===Scicos-Scilab=== | ||
Evidence Companie built a Scilab/Scicos Code Generator for the FLEX board which is based on a microchip microcontroller | Evidence Companie built a Scilab/Scicos Code Generator for the FLEX board which is based on a microchip microcontroller | ||
+ | ---- | ||
+ | ---- | ||
===Embedded Target for dsPIC=== | ===Embedded Target for dsPIC=== | ||
(Matlab Blockset from this website) | (Matlab Blockset from this website) | ||
Line 43: | Line 50: | ||
Supported chip : {{PicList}} | Supported chip : {{PicList}} | ||
+ | ---- | ||
+ | ---- | ||
==Experimentation== | ==Experimentation== | ||
===The Autonomous Unmanned Systems (USL)=== | ===The Autonomous Unmanned Systems (USL)=== |
Revision as of 03:39, 8 July 2009
Rapid Prototyping Tools or experimentation for Microchip PIC / dsPIC microcontroller
Contents
Tools
Microchip
Microchip released a first version of a blockst in late 2008 (about november). The version 2 of the microchip blockset were released on June, 5th 2009. This second version seems more interresting as seems more similar to the blockst I developped (*). Anyway, interrupt seems not to be handeled properly to makes the peripheral works efficiently. A free evaluation version is available from their website. Please report your feeling on the forum.
(*) Strange facts: In microchip dsPIC_mrmain.tlc file in directory dspicblks, you can find
%if (CalculusTimeStepEN == 1) CalculusTimeStep = TMR1; %endif %if (MasterBusyPort != -1)
The same instructions can be found in the original: In Lubin's blockset, dsPIC_mrmain.tlc file in directory blocks
%if (CalculusTimeStepEN == 1) if (_T1IF) CalculusTimeStep = PR1; /* Overload */ else CalculusTimeStep = TMR1; %endif %if (MasterBusyPort != -1)
(differences comes from the fact that I improved it, i.e. Microchip did not get inspired from my last version)
This code is a very specific function that can only be found in the "Lubin's blockset". This code remains in their tool, even in V2 published on 5th 2009 despite this file is not used anymore. There are probably other example, but nevermind, I do not understand what's happening there. (I now scramble tlc files, thus, you will find variables name : CalculusTimeStepEN and CalculusTimeStep)
I strongly encourage Microchip to find many new ideas to make dsPIC programming easier and even more exciting with Simulink. But I would be disapointed if Microchip blockest is only a not finished copy, of tools already existing.
A workaround to remove the 30s pause : create a new m file called pause.m in the same directory as the model being compiled with the following text :
function pause(a) disp('Workaround for accelerating compilation of models using microchip blockset. try also http://www.keruel.eu/wiki'); end
Quantiphi
product from SimuQuest companie sell a Matlab toolbox for Microchip PIC18Fx480/x580 (9000$ for a single licence including the UniPhi product)
Scicos-Scilab
Evidence Companie built a Scilab/Scicos Code Generator for the FLEX board which is based on a microchip microcontroller
Embedded Target for dsPIC
(Matlab Blockset from this website)
Supported chip :
See Release Notes and known bug for details
|
Experimentation
The Autonomous Unmanned Systems (USL)
This team at the University or South Florida works of Unmanned Aerial Vehicles (UAV). In a step by stem approach, they validate the simulink generated code by compiling it and connecting the "Autopilote PC-software" to a plane simulation software (X-Plane). Then, they compile the code to implement it into a PIC18f 4620. They deal with timing and PIC peripheral by integrating "hand coding functions" into the code generated by Matlab.
Two refferences: ( PDF available on http://splatsosoft.com:81/site/jeff/vitae.html )
D. Ernst, K. Valavanis, J. Craighead, “Unmanned Vehicle Controller Design, Evaluation and Implementation: From MATLAB to Printed Circuit Board”, Journal of Intelligent and Robotic Systems (In print)
D. Ernst, K. Valavanis, J. Craighead, Automated Process for Unmanned Systems Controller Implementation Using MATLAB, CD-ROM Proceedings, 14th Mediterranean Conference on Control and Automation, Ancona, Italy, June 2006.