L'acide benzoïque, un conservateur alimentaire



L’objectif de ce travail est la détermination de l’avancement final d’une transformation non totale à l’aide d’un langage de programmation.

Documents

L’acide benzoïque, de formule chimique $\ce{C6H5COOH}$ est un acide carboxylique aromatique dérivé du benzène. Il est utilisé comme conservateur alimentaire et est naturellement présent dans certaines plantes. C’est par exemple l’un des principaux constituants de la gomme benjoin, utilisée dans des encens dans les églises de Russie et d’autres communautés orthodoxes. Bien qu’étant un acide faible, l’acide benzoïque n’est que peu soluble dans l’eau du fait de la présence du cycle benzénique apolaire.
On trouve de l’acide benzoïque dans les plantes alimentaires :

  • en quantité notable dans le canneberge d’Amérique11 (Vaccinium macrocarpon) : $\pu{48,10 mg/100 ml}$ ;
  • dans une moindre mesure dans la poudre de cacao (Theobroma cacao) : $\pu{0,06 mg/100 ml}$.

Parmi les principaux composés qui dérivent de l’acide benzoïque, on peut citer l’acide salicylique et l’acide acétylsalicylique plus connu sous le nom d’aspirine.
En tant qu’additif alimentaire, il est référencé en Europe sous le code E210.
Au-dessus de 370 °C, il se décompose en formant du benzène et du dioxyde de carbone.
L’acide benzoïque a une odeur forte et est facilement inflammable.

Données
  • Solubilité dans l’eau à 20 °C : $\pu{2,9 g.L-1}$, soluble dans le chloroforme, l’éthanol et l’acétone ;
  • $\text{pK}_A (\ce{C6H5CO2H/C6H5CO2^-}) = \pu{4,2}$ ;
  • $M(\ce{C6H5CO2H}) = \pu{122,1 g.mol-1}$.
Page Wikipedia

Travail

  1. Écrire l’équation de la réaction entre l’acide benzoïque et l’eau.

Réponse

$\ce{C6H5CO2H (aq) + H2O <=> C6H5CO2^- (aq) + H3O+ }$


  1. Déterminer la concentration molaire apporté $c_A$ d’acide benzoïque dans une solution saturée en acide benzoïque.

Réponse

La solubilité $s$ est la masse maximale que l’on peut dissoudre dans un litre de solution. Si on essaie de dissoudre une masse plus grande, on obtient une solution saturée (la concentration massique n’augmente donc pas). La concentration molaire apportée d’acide dans la solution est donc $c_A = \dfrac{s}{M}$ où $M$ est la masse molaire de l’acide benzoïque.

A.N. $c_A = \dfrac{\pu{2,9 g.L-1}}{\pu{122,1 g.mol-1}} = \pu{2,4e-2 mol.L-1}$.


  1. Déterminer l’avancement maximal $x_{max}$ de la réaction de l’acide benzoïque avec l’eau dans un volume $V = \pu{40 mL}$ de solution saturée.

Réponse

L’utilisation d’un tableau d’avancement permet de conclure que $n_0(\ce{C6H5CO2H}) - x_{max} = 0 \iff x_{max} = n_0(\ce{C6H5CO2H}) = c_A \cdot V$.

A.N. $x_{max} = \pu{2,4e-2 mol.L-1} \times \pu{40e-3 L} = \pu{9,5e-4 mol}$.


  1. Cette solution a un pH de 2,9. Déterminer l’avancement final $x_f$, puis le taux d’avancement final $\tau$ de la réaction.

Réponse
  • L’utilisation d’un tableau d’avancement permet de conclure que $x_f = n_f(\ce{H3O+}) = C^o \cdot 10^{-\text{pH}} \cdot V$.

    A.N. $x_f = \pu{1,0} \times 10^{-\pu{2,9}} \times \pu{40e-3 L} = \pu{5,0e-5 mol}$.

  • $\tau = \dfrac{x_f}{x_{max}} = \dfrac{\pu{5,0e-5 mol}}{\pu{9,5e-4 mol}} = \pu{5,3e-2}$ L’avancement final ne représente que 5,3% de l’avancement maximal.


  1. Montrer qu’on peut exprimer la constante d’acidité $K_A$ sous la forme

$$ K_A = \dfrac{c_A \cdot \tau^2}{C^o \, (1 - \tau)} $$

  1. Calculer la valeur de $\tau$ et la comparer le résultat obtenu avec la valeur trouvée à la question 4.

  2. Écrire un programme en Python qui calcule les racines d’un polynôme du second degré.
    Il doit, en particulier :

    • demander à l’utilisateur la valeur du $K_A$ ;
    • demander à l’utilisateur la valeur de $c_A$ ;
    • calculer le discriminant $\Delta$ ;
    • calculer, en fonction de la valeur du discriminant, la valeur des racines si elles existent.
  • Affichage du contenu d’une variable à l’écran en Python
1
print("Première racine : {}".format(variable))
  • Demande d’une information à l’utilisateur en Python
1
Ka = float(input("Entrer la valeur du Ka : "))

Remarque : La fonction input retourne toujours une chaîne de caractères. Lorsque l’information est un nombre, il faut transformer la chaîne de caractères. Ici, on utilise la fonction float.

  • Structure conditionnelle en Python :
1
2
3
4
5
6
if condition_1 :
    faire si condition_1 est vérifiée
elif condition_2:
    faire si condition_1 n est pas vérifiée et condition_2 est verifiée
else:
    faire si aucune condition n est vérifiée

Suggestions de lecture :