Electronic Circuits Newbie - piezoelectric transducer control circuit

Hi folks:

An update to what I did circuit-wise. I used the simple blink sketch and wired it up as indicated in the picture. I used a low-voltage DC motor to validate my basic understanding (so far). The motor does in fact behave as I intend, i.e., active for few seconds, then inactive for a few, and repeat.

I assume that there are many safety items for me to consider, but I figure baby steps...

Now, what would you believe is necessary for me to do better? In other words I am not looking for spoon-feeding, but nudges in the proper direction, things I ought to learn about next, etc.

Any guidance is greatly appreciated.

Regards.

void setup() {
  // initialize digital pin 5 as an output.
  pinMode(5, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(5, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(3000);                       // wait for 3 seconds
  digitalWrite(5, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}