Can you just use the Arduino’s millis() function for your timing? For example, have your main loop check how many new encoder counts have occurred in the past 10 or 100 ms. Note that if your wheels are turning slowly enough, you might want to transition from measuring encoder counts in a fixed time period to the time between successive encoder edges.
Updating the speed in a timer interrupt will give you better accuracy, but that might not be necessary, especially if your main loop isn’t doing very much. If you want to see how to do a timer interrupt, you can look at the Arduino source code to see how millis() works.