MapleSim 2020 Questions and Posts

These are Posts and Questions associated with the product, MapleSim 2020


I want to get an adjustable parameter in maplesim. For example, here is a pulse voltage source, i  want to make its amplitude controlled by another voltage output (doesn't exist in this .msim).


When i click off the "Plot events", the figure of Probe2 is pretty different comparing with "Plot events" is turned on. Here is my assumption: the simulation duration is 500 seconds and the plot points are 2000. Considering the frequency of sine current is 40HZ, many points cannot be ploted in the figure. So it is not a big deal for curve like Probe1 and Probe5 because  they tend to be a constant and Probe2 just reflect the tendency.


I try to build a piezoelectric equivalent circuit (a sine current source, a capacitor and a resistor), but it doesn't act as a voltage source. I also try to change the forward voltage of the ideal diode in full-bridge rectifier and find that the output voltage of piezoelectric equivalent circuit cannot exceed forward voltage.

By the way, the parameters of piezoelectric equivalent circuit are well set according to a paper.

Could you give me some advice?


I try to design a circuit to make a voltage-current-voltage translation. In my assumption, probe1.v is equal to probe2.v and it will generate a current(probe2.v / R4) through NMOS. The NMOS acts as a closed switch. Probe3.v is equal to CV3 and i can get "Probe4.v = CV1 + CV3". However, when the circuit operates, probe3.v isn't equal to CV3 and probe1.v isn't equal to probe2.v. I have tried to rise the differential input resistance and differential amplifier to make the Uin+ close to Uin- in op amp, but it doesn"t work effectively.
In addition, the closed resisitance of NMOS is also taken into consideration and i try to make it pretty below Kohm.

Could you help me fix the problem? 


I am trying to design a charge circuit for Li battery, but i don't think it is a good idea to discharge the battery by a resistor or a cuurent source. So, how can i set the parameters to make the battery discharged initially?

I try to design a half rectifier circuit in MapleSim, but the simulation is so slow and the console output says "Warning: many small integration steps are being taken at a very small proportion of integration range at t=2.9653230e-006, absolute/relative tolerance may be too tight for problem, or problem may require a stiff solver". So how should i improve the circuit to make the simulation faster?

By the way, i don't want to change the basic design of the circuit, so the circuit should consist of both diode and op amp. I know the diode only circuit can achieve the same goal.



I try to simulate a current mirror model, but it doesn't work and say "cannot evaluate the solution past the initial point, problem may be complex, initially singular or improperly set up". Maybe some incorrect parameters are set there, could you fix it? 

here is logical_circuit.msim

i cannot connect the output of the left two AndGates to the input of the right AndGate. They are both digital signal connectors, why cannot be connected?




as the cuts show,  i build a simple  system to check how does the "edge with init" work? The switch is "ideal opening switch". the rising edge is always "0" while the voltage is always 1v, it seems that the "edge with init" doesn't work. Please give me some explaintion of the problem. 

here is thetest.msim


i wanna build an integrated circuit by digital block of electrical in maplesim. i know the input of digital items should be a vector, but i dont know how to build a vector in maplesim. for example, how to build a simple gate circuit in maplesim? Maybe i should use the modelica to do it?

 i use maplesim 2020.


I am trying to implement normally distributed noise into a maplesim simulation. I thought this would be done most easily thru adding a modelica custom component. There are some examples to go on on the web however Modelica are not really good at explaining there implementation. 

The code for my implemented block can be seen below. 


model Noise2
    import MBI = Modelica.Blocks.Interfaces;
    import MBN = Modelica.Blocks.Noise;
    import MMD = Modelica.Math.Distributions.Uniform;
    output MBI.RealOutput out annotation (Placement(transformation(extent={{100,-10},{120,10}}))); 

    inner Modelica.Blocks.Noise.GlobalSeed globalSeed(fixedSeed=42);
    MBN.NormalNoise generator(samplePeriod=0.1,distribution=MMD.density(0, -1, 1));

    Real y(useGlobalSeed=true, useAutomaticLocalSeed = false, fixedLocalSeed=false, startTime = 0);
    out = generator.y;
end Noise2;


However this results in the following error

Argument 1 must have integer[4] data type


Due to my inexperience with Modelica, I don't even know were to start searching for the error. So I turn to this wonderful community in my hour of need, How do I implement normal distributed noise in maplesim?


Eric Ragnarsson


I have created a robot ar with p starting position X, Y, Z and a spring that connects to the robot end effector with a spring that is L long. I have exported this simulink model to an FMU inorder to use it in python. 

Is it posible to change the value of X, Y, Z and L using pyfmi before using it in pythuon and if it is, then how?


Thanks again for youre time and help. I know that this is not exaclyt inside the expertise of this fine comunity but have no were else to go.

Eric R


I have created an model of a UR5e robot complete with mass and inertia however I have a problem with implementing the viscus friction. I have the viscus friction values for each of the joints calculated from another program, I just need to implement them.



Eric Ragnarsson

We have just released updates to Maple and MapleSim.

Maple 2020.2 includes corrections and improvements to printing and export to PDF, support for macOS 11.0, more MATLAB connectivity, resolves issues with the installation of the Maplesoft Physics Updates, and more.  We recommend that all Maple 2020 users install these updates.

This update is available through Tools>Check for Updates in Maple, and is also available from our website on the Maple 2020.2 download page, where you can also find more details.

If you are also a MapleSim user, this Maple update will be installed automatically when you update your MapleSim installation to the newly released MapleSim 2020.2. The MapleSim update also includes many updates to MapleSim, the MapleSim CAD Toolbox, specialized MapleSim libraries, MapleSim connectivity tools, and MapleSim Insight.  You will find details about new features and improvements, as well as instructions on obtaining the update, on the MapleSim 2020.2 page.


I have constructed a model of an UR5e in maplesim with the hop to be able to test my controller writen in python on it. 

I hope to be able from the model to

  • Enter a tourqvalue for the joints.
  • Extract joint angles, joint velocitys as well as the forces and tourqes that affects the end effector.
  • (If posible) visualize the sumulated robot arm so I can se that the motion reflects that of the real robot arm.

the simulated robot arm 

The question is how to best do this in a semi realtime way?

I have been looking into generating a FMU but if there are other ways to do this, then I am open to ides. 

The contorller is based on a haptic algoritm for connecting two robot arms and I will only get one robot arm due to prise and space constraints.

This means that I will reseave realtime information from the real robot arm into my python controller that then i supose to take inforamtion from the simulated arm and with information from both arms calculate the tourqe values for both arms joints. 


Thanks in advance for all youre help

Eric Ragnarsson

1 2 Page 1 of 2