Virtually any home sewing machine can sew canvas. The major problem has more to do with machine durability than the actual sewing function itself. But don't expect any home sewing machine to sew canvas with just a typical sewing machine needle and light thread. To do the job correctly, you'll need special heavy-duty needles and a heavy-duty cotton-polyester thread.
Thread the machine with cotton-polyester blend. For heavier weights of canvas use a heavier weight of thread.
Insert a heavy-duty sewing needle into the needle holder. Needles must be either a 110/18 or a 120/19 type for satisfactory results.
Place a scrap piece of canvas onto the sewing machine bed and lower the foot over the top. Start the machine and make several stitches. Pull the canvas out of the machine and check the tension setting. Thread loops on top of the canvas mean the top tension is too tight. Adjust the spool tension accordingly. Thread loops on the bottom of the canvas means the bobbin tension is too tight. Adjust the bobbin tension accordingly.
Sew on the scrap piece of canvas once again and adjust the tension as needed. This is a trial-and-error method that is never the same on any given machine. Once the correct tension is achieved, which is the point where there are no thread loops on either side of the canvas, pull out the scrap piece and insert the piece of canvas to be sewn.
Vintage all-metal sewing machines, from the 1970s and before, make good canvas and other heavier weight sewing machines. All-metal construction means they have all-metal gearing that makes them much more durable for sewing heavier weight fabrics of any type.