As per my understanding, you are facing “overrun error”. Since you have mentioned about a few options, I would assume that you are going to try all of those, and I would suggest the other possible workarounds for this. You have mentioned about the following workarounds:
- Checking the limitation of buffer capacity
- Consider using a different block
- Using a subsystem
- Adding additional blocks
While trying to increase the buffer capacity in your Simulink model for real-time implementation on “dSPACE”, the following are the other possible workarounds:
- Try increasing the buffer size gradually: Instead of directly increasing the buffer size to 2000, try incrementing it gradually and testing each increment. This approach can help identify the maximum buffer size that works without causing overrun errors. If a buffer size of 150 works fine, you can try increasing it incrementally from there.
- Optimize your model: Review your model for any unnecessary computations or delays that might be causing the overrun errors. Simplify or optimize your model to reduce its computational load and improve real-time performance.
- Check the parameters: The parameters could be changed and tested. For example, a very small “sample time” may lead to overrun errors. Hence try checking those.
Please note that the optimal buffer size and approach may vary depending on your specific model, hardware, and real-time implementation requirements.