Often, when students around Intermediate have trouble with tenses, the issue is with using rather than forming. Ask the S to identify a tense and they can do it, ask them to write their own sentence and they are baffled.
I approach this in two ways. Write the same sentences in different tenses and ask them to identify how the meaning changes
"When I came home my wife cooked dinner"
"When I came home my wife was cooking dinner"
"When I came home my wife had cooked dinner"
For the past perfect I use a short story, only 3-4 sentences. One version is past simple and in chronological order, the other is past perfect. Mark the events on the whiteboard with circles or stars or whatever, and use this to illustrate how the PP story starts from a different time to the PS version.
My generic story for this exercise is
'X cooked dinner. The guests came and had a great time. The guests left at 2am'
'X looked at the dinner table. It was 2am and the guests had left. X had cooked a lovely meal and the guests had had a great time.'
The first story starts at event 1, the second at event 3
If materials is an issue, One Stop English | Home is a useful site.
Intermediate students are quite capable. They should be able to hold a reasonable discussion (make arrangements to meet, discuss problems, etc.) and be able to mix tenses, such as continuous and simple to report an event. They should also be familiar with passive tenses, though they often have trouble with that right through upper-intermediate.