I have some questions here. BaTiO3 is a material which exhibit piezoelectric effect when we give external pressure on it. It contain Ba2+, Ti4+, and O2- ion in its crystal unit. The Ti4+ ion will move up or down, so the crystal will polarize and that it could produce electricity. But how's that possible? I mean, electricity (current) is a flow of the electrons but I still have no idea about where the electron come from? My guess is: these electron came from Ti4+ ion. Can somebody explain to me what actually going on?
This is due to the molecular arrangement of the atoms in the crystal.
Basically, a piezoelectric crystal contains molecules arranged in, say, tetrahedral fashion. The dipole moments of each and every atom pairs are well balanced. When you squeeze or twist the crystal, the equilibrium gets disturbed. That is, one or the other dipoles remain only partially opposed. This happens to many dipoles, and as a result a net dipole moment develops in the crystal. This can also be interpreted in terms of potential difference.
These two ends when connected to a circuit, causes a current.
Remember, as Gede panji quoted , potential difference causes current here, not the reverse. I hope this clears your doubt.